1. Packages
  2. Google Cloud Native
  3. API Docs
  4. compute
  5. compute/beta
  6. UrlMap

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.compute/beta.UrlMap

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Creates a UrlMap resource in the specified project using the data included in the request.

    Create UrlMap Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new UrlMap(name: string, args?: UrlMapArgs, opts?: CustomResourceOptions);
    @overload
    def UrlMap(resource_name: str,
               args: Optional[UrlMapArgs] = None,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def UrlMap(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               default_custom_error_response_policy: Optional[CustomErrorResponsePolicyArgs] = None,
               default_route_action: Optional[HttpRouteActionArgs] = None,
               default_service: Optional[str] = None,
               default_url_redirect: Optional[HttpRedirectActionArgs] = None,
               description: Optional[str] = None,
               header_action: Optional[HttpHeaderActionArgs] = None,
               host_rules: Optional[Sequence[HostRuleArgs]] = None,
               name: Optional[str] = None,
               path_matchers: Optional[Sequence[PathMatcherArgs]] = None,
               project: Optional[str] = None,
               request_id: Optional[str] = None,
               tests: Optional[Sequence[UrlMapTestArgs]] = None)
    func NewUrlMap(ctx *Context, name string, args *UrlMapArgs, opts ...ResourceOption) (*UrlMap, error)
    public UrlMap(string name, UrlMapArgs? args = null, CustomResourceOptions? opts = null)
    public UrlMap(String name, UrlMapArgs args)
    public UrlMap(String name, UrlMapArgs args, CustomResourceOptions options)
    
    type: google-native:compute/beta:UrlMap
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args UrlMapArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args UrlMapArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args UrlMapArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args UrlMapArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args UrlMapArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var google_nativeUrlMapResource = new GoogleNative.Compute.Beta.UrlMap("google-nativeUrlMapResource", new()
    {
        DefaultCustomErrorResponsePolicy = new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyArgs
        {
            ErrorResponseRules = new[]
            {
                new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyCustomErrorResponseRuleArgs
                {
                    MatchResponseCodes = new[]
                    {
                        "string",
                    },
                    OverrideResponseCode = 0,
                    Path = "string",
                },
            },
            ErrorService = "string",
        },
        DefaultRouteAction = new GoogleNative.Compute.Beta.Inputs.HttpRouteActionArgs
        {
            CorsPolicy = new GoogleNative.Compute.Beta.Inputs.CorsPolicyArgs
            {
                AllowCredentials = false,
                AllowHeaders = new[]
                {
                    "string",
                },
                AllowMethods = new[]
                {
                    "string",
                },
                AllowOriginRegexes = new[]
                {
                    "string",
                },
                AllowOrigins = new[]
                {
                    "string",
                },
                Disabled = false,
                ExposeHeaders = new[]
                {
                    "string",
                },
                MaxAge = 0,
            },
            FaultInjectionPolicy = new GoogleNative.Compute.Beta.Inputs.HttpFaultInjectionArgs
            {
                Abort = new GoogleNative.Compute.Beta.Inputs.HttpFaultAbortArgs
                {
                    HttpStatus = 0,
                    Percentage = 0,
                },
                Delay = new GoogleNative.Compute.Beta.Inputs.HttpFaultDelayArgs
                {
                    FixedDelay = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                    {
                        Nanos = 0,
                        Seconds = "string",
                    },
                    Percentage = 0,
                },
            },
            MaxStreamDuration = new GoogleNative.Compute.Beta.Inputs.DurationArgs
            {
                Nanos = 0,
                Seconds = "string",
            },
            RequestMirrorPolicy = new GoogleNative.Compute.Beta.Inputs.RequestMirrorPolicyArgs
            {
                BackendService = "string",
            },
            RetryPolicy = new GoogleNative.Compute.Beta.Inputs.HttpRetryPolicyArgs
            {
                NumRetries = 0,
                PerTryTimeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                {
                    Nanos = 0,
                    Seconds = "string",
                },
                RetryConditions = new[]
                {
                    "string",
                },
            },
            Timeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
            {
                Nanos = 0,
                Seconds = "string",
            },
            UrlRewrite = new GoogleNative.Compute.Beta.Inputs.UrlRewriteArgs
            {
                HostRewrite = "string",
                PathPrefixRewrite = "string",
                PathTemplateRewrite = "string",
            },
            WeightedBackendServices = new[]
            {
                new GoogleNative.Compute.Beta.Inputs.WeightedBackendServiceArgs
                {
                    BackendService = "string",
                    HeaderAction = new GoogleNative.Compute.Beta.Inputs.HttpHeaderActionArgs
                    {
                        RequestHeadersToAdd = new[]
                        {
                            new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                            {
                                HeaderName = "string",
                                HeaderValue = "string",
                                Replace = false,
                            },
                        },
                        RequestHeadersToRemove = new[]
                        {
                            "string",
                        },
                        ResponseHeadersToAdd = new[]
                        {
                            new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                            {
                                HeaderName = "string",
                                HeaderValue = "string",
                                Replace = false,
                            },
                        },
                        ResponseHeadersToRemove = new[]
                        {
                            "string",
                        },
                    },
                    Weight = 0,
                },
            },
        },
        DefaultService = "string",
        DefaultUrlRedirect = new GoogleNative.Compute.Beta.Inputs.HttpRedirectActionArgs
        {
            HostRedirect = "string",
            HttpsRedirect = false,
            PathRedirect = "string",
            PrefixRedirect = "string",
            RedirectResponseCode = GoogleNative.Compute.Beta.HttpRedirectActionRedirectResponseCode.Found,
            StripQuery = false,
        },
        Description = "string",
        HeaderAction = new GoogleNative.Compute.Beta.Inputs.HttpHeaderActionArgs
        {
            RequestHeadersToAdd = new[]
            {
                new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                {
                    HeaderName = "string",
                    HeaderValue = "string",
                    Replace = false,
                },
            },
            RequestHeadersToRemove = new[]
            {
                "string",
            },
            ResponseHeadersToAdd = new[]
            {
                new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                {
                    HeaderName = "string",
                    HeaderValue = "string",
                    Replace = false,
                },
            },
            ResponseHeadersToRemove = new[]
            {
                "string",
            },
        },
        HostRules = new[]
        {
            new GoogleNative.Compute.Beta.Inputs.HostRuleArgs
            {
                Description = "string",
                Hosts = new[]
                {
                    "string",
                },
                PathMatcher = "string",
            },
        },
        Name = "string",
        PathMatchers = new[]
        {
            new GoogleNative.Compute.Beta.Inputs.PathMatcherArgs
            {
                DefaultCustomErrorResponsePolicy = new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyArgs
                {
                    ErrorResponseRules = new[]
                    {
                        new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyCustomErrorResponseRuleArgs
                        {
                            MatchResponseCodes = new[]
                            {
                                "string",
                            },
                            OverrideResponseCode = 0,
                            Path = "string",
                        },
                    },
                    ErrorService = "string",
                },
                DefaultRouteAction = new GoogleNative.Compute.Beta.Inputs.HttpRouteActionArgs
                {
                    CorsPolicy = new GoogleNative.Compute.Beta.Inputs.CorsPolicyArgs
                    {
                        AllowCredentials = false,
                        AllowHeaders = new[]
                        {
                            "string",
                        },
                        AllowMethods = new[]
                        {
                            "string",
                        },
                        AllowOriginRegexes = new[]
                        {
                            "string",
                        },
                        AllowOrigins = new[]
                        {
                            "string",
                        },
                        Disabled = false,
                        ExposeHeaders = new[]
                        {
                            "string",
                        },
                        MaxAge = 0,
                    },
                    FaultInjectionPolicy = new GoogleNative.Compute.Beta.Inputs.HttpFaultInjectionArgs
                    {
                        Abort = new GoogleNative.Compute.Beta.Inputs.HttpFaultAbortArgs
                        {
                            HttpStatus = 0,
                            Percentage = 0,
                        },
                        Delay = new GoogleNative.Compute.Beta.Inputs.HttpFaultDelayArgs
                        {
                            FixedDelay = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            Percentage = 0,
                        },
                    },
                    MaxStreamDuration = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                    {
                        Nanos = 0,
                        Seconds = "string",
                    },
                    RequestMirrorPolicy = new GoogleNative.Compute.Beta.Inputs.RequestMirrorPolicyArgs
                    {
                        BackendService = "string",
                    },
                    RetryPolicy = new GoogleNative.Compute.Beta.Inputs.HttpRetryPolicyArgs
                    {
                        NumRetries = 0,
                        PerTryTimeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                        {
                            Nanos = 0,
                            Seconds = "string",
                        },
                        RetryConditions = new[]
                        {
                            "string",
                        },
                    },
                    Timeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                    {
                        Nanos = 0,
                        Seconds = "string",
                    },
                    UrlRewrite = new GoogleNative.Compute.Beta.Inputs.UrlRewriteArgs
                    {
                        HostRewrite = "string",
                        PathPrefixRewrite = "string",
                        PathTemplateRewrite = "string",
                    },
                    WeightedBackendServices = new[]
                    {
                        new GoogleNative.Compute.Beta.Inputs.WeightedBackendServiceArgs
                        {
                            BackendService = "string",
                            HeaderAction = new GoogleNative.Compute.Beta.Inputs.HttpHeaderActionArgs
                            {
                                RequestHeadersToAdd = new[]
                                {
                                    new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                    {
                                        HeaderName = "string",
                                        HeaderValue = "string",
                                        Replace = false,
                                    },
                                },
                                RequestHeadersToRemove = new[]
                                {
                                    "string",
                                },
                                ResponseHeadersToAdd = new[]
                                {
                                    new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                    {
                                        HeaderName = "string",
                                        HeaderValue = "string",
                                        Replace = false,
                                    },
                                },
                                ResponseHeadersToRemove = new[]
                                {
                                    "string",
                                },
                            },
                            Weight = 0,
                        },
                    },
                },
                DefaultService = "string",
                DefaultUrlRedirect = new GoogleNative.Compute.Beta.Inputs.HttpRedirectActionArgs
                {
                    HostRedirect = "string",
                    HttpsRedirect = false,
                    PathRedirect = "string",
                    PrefixRedirect = "string",
                    RedirectResponseCode = GoogleNative.Compute.Beta.HttpRedirectActionRedirectResponseCode.Found,
                    StripQuery = false,
                },
                Description = "string",
                HeaderAction = new GoogleNative.Compute.Beta.Inputs.HttpHeaderActionArgs
                {
                    RequestHeadersToAdd = new[]
                    {
                        new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                        {
                            HeaderName = "string",
                            HeaderValue = "string",
                            Replace = false,
                        },
                    },
                    RequestHeadersToRemove = new[]
                    {
                        "string",
                    },
                    ResponseHeadersToAdd = new[]
                    {
                        new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                        {
                            HeaderName = "string",
                            HeaderValue = "string",
                            Replace = false,
                        },
                    },
                    ResponseHeadersToRemove = new[]
                    {
                        "string",
                    },
                },
                Name = "string",
                PathRules = new[]
                {
                    new GoogleNative.Compute.Beta.Inputs.PathRuleArgs
                    {
                        CustomErrorResponsePolicy = new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyArgs
                        {
                            ErrorResponseRules = new[]
                            {
                                new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyCustomErrorResponseRuleArgs
                                {
                                    MatchResponseCodes = new[]
                                    {
                                        "string",
                                    },
                                    OverrideResponseCode = 0,
                                    Path = "string",
                                },
                            },
                            ErrorService = "string",
                        },
                        Paths = new[]
                        {
                            "string",
                        },
                        RouteAction = new GoogleNative.Compute.Beta.Inputs.HttpRouteActionArgs
                        {
                            CorsPolicy = new GoogleNative.Compute.Beta.Inputs.CorsPolicyArgs
                            {
                                AllowCredentials = false,
                                AllowHeaders = new[]
                                {
                                    "string",
                                },
                                AllowMethods = new[]
                                {
                                    "string",
                                },
                                AllowOriginRegexes = new[]
                                {
                                    "string",
                                },
                                AllowOrigins = new[]
                                {
                                    "string",
                                },
                                Disabled = false,
                                ExposeHeaders = new[]
                                {
                                    "string",
                                },
                                MaxAge = 0,
                            },
                            FaultInjectionPolicy = new GoogleNative.Compute.Beta.Inputs.HttpFaultInjectionArgs
                            {
                                Abort = new GoogleNative.Compute.Beta.Inputs.HttpFaultAbortArgs
                                {
                                    HttpStatus = 0,
                                    Percentage = 0,
                                },
                                Delay = new GoogleNative.Compute.Beta.Inputs.HttpFaultDelayArgs
                                {
                                    FixedDelay = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                                    {
                                        Nanos = 0,
                                        Seconds = "string",
                                    },
                                    Percentage = 0,
                                },
                            },
                            MaxStreamDuration = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            RequestMirrorPolicy = new GoogleNative.Compute.Beta.Inputs.RequestMirrorPolicyArgs
                            {
                                BackendService = "string",
                            },
                            RetryPolicy = new GoogleNative.Compute.Beta.Inputs.HttpRetryPolicyArgs
                            {
                                NumRetries = 0,
                                PerTryTimeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                                {
                                    Nanos = 0,
                                    Seconds = "string",
                                },
                                RetryConditions = new[]
                                {
                                    "string",
                                },
                            },
                            Timeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            UrlRewrite = new GoogleNative.Compute.Beta.Inputs.UrlRewriteArgs
                            {
                                HostRewrite = "string",
                                PathPrefixRewrite = "string",
                                PathTemplateRewrite = "string",
                            },
                            WeightedBackendServices = new[]
                            {
                                new GoogleNative.Compute.Beta.Inputs.WeightedBackendServiceArgs
                                {
                                    BackendService = "string",
                                    HeaderAction = new GoogleNative.Compute.Beta.Inputs.HttpHeaderActionArgs
                                    {
                                        RequestHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        RequestHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                        ResponseHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        ResponseHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                    },
                                    Weight = 0,
                                },
                            },
                        },
                        Service = "string",
                        UrlRedirect = new GoogleNative.Compute.Beta.Inputs.HttpRedirectActionArgs
                        {
                            HostRedirect = "string",
                            HttpsRedirect = false,
                            PathRedirect = "string",
                            PrefixRedirect = "string",
                            RedirectResponseCode = GoogleNative.Compute.Beta.HttpRedirectActionRedirectResponseCode.Found,
                            StripQuery = false,
                        },
                    },
                },
                RouteRules = new[]
                {
                    new GoogleNative.Compute.Beta.Inputs.HttpRouteRuleArgs
                    {
                        CustomErrorResponsePolicy = new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyArgs
                        {
                            ErrorResponseRules = new[]
                            {
                                new GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyCustomErrorResponseRuleArgs
                                {
                                    MatchResponseCodes = new[]
                                    {
                                        "string",
                                    },
                                    OverrideResponseCode = 0,
                                    Path = "string",
                                },
                            },
                            ErrorService = "string",
                        },
                        Description = "string",
                        HeaderAction = new GoogleNative.Compute.Beta.Inputs.HttpHeaderActionArgs
                        {
                            RequestHeadersToAdd = new[]
                            {
                                new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                {
                                    HeaderName = "string",
                                    HeaderValue = "string",
                                    Replace = false,
                                },
                            },
                            RequestHeadersToRemove = new[]
                            {
                                "string",
                            },
                            ResponseHeadersToAdd = new[]
                            {
                                new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                {
                                    HeaderName = "string",
                                    HeaderValue = "string",
                                    Replace = false,
                                },
                            },
                            ResponseHeadersToRemove = new[]
                            {
                                "string",
                            },
                        },
                        HttpFilterConfigs = new[]
                        {
                            new GoogleNative.Compute.Beta.Inputs.HttpFilterConfigArgs
                            {
                                Config = "string",
                                ConfigTypeUrl = "string",
                                FilterName = "string",
                            },
                        },
                        HttpFilterMetadata = new[]
                        {
                            new GoogleNative.Compute.Beta.Inputs.HttpFilterConfigArgs
                            {
                                Config = "string",
                                ConfigTypeUrl = "string",
                                FilterName = "string",
                            },
                        },
                        MatchRules = new[]
                        {
                            new GoogleNative.Compute.Beta.Inputs.HttpRouteRuleMatchArgs
                            {
                                FullPathMatch = "string",
                                HeaderMatches = new[]
                                {
                                    new GoogleNative.Compute.Beta.Inputs.HttpHeaderMatchArgs
                                    {
                                        ExactMatch = "string",
                                        HeaderName = "string",
                                        InvertMatch = false,
                                        PrefixMatch = "string",
                                        PresentMatch = false,
                                        RangeMatch = new GoogleNative.Compute.Beta.Inputs.Int64RangeMatchArgs
                                        {
                                            RangeEnd = "string",
                                            RangeStart = "string",
                                        },
                                        RegexMatch = "string",
                                        SuffixMatch = "string",
                                    },
                                },
                                IgnoreCase = false,
                                MetadataFilters = new[]
                                {
                                    new GoogleNative.Compute.Beta.Inputs.MetadataFilterArgs
                                    {
                                        FilterLabels = new[]
                                        {
                                            new GoogleNative.Compute.Beta.Inputs.MetadataFilterLabelMatchArgs
                                            {
                                                Name = "string",
                                                Value = "string",
                                            },
                                        },
                                        FilterMatchCriteria = GoogleNative.Compute.Beta.MetadataFilterFilterMatchCriteria.MatchAll,
                                    },
                                },
                                PathTemplateMatch = "string",
                                PrefixMatch = "string",
                                QueryParameterMatches = new[]
                                {
                                    new GoogleNative.Compute.Beta.Inputs.HttpQueryParameterMatchArgs
                                    {
                                        ExactMatch = "string",
                                        Name = "string",
                                        PresentMatch = false,
                                        RegexMatch = "string",
                                    },
                                },
                                RegexMatch = "string",
                            },
                        },
                        Priority = 0,
                        RouteAction = new GoogleNative.Compute.Beta.Inputs.HttpRouteActionArgs
                        {
                            CorsPolicy = new GoogleNative.Compute.Beta.Inputs.CorsPolicyArgs
                            {
                                AllowCredentials = false,
                                AllowHeaders = new[]
                                {
                                    "string",
                                },
                                AllowMethods = new[]
                                {
                                    "string",
                                },
                                AllowOriginRegexes = new[]
                                {
                                    "string",
                                },
                                AllowOrigins = new[]
                                {
                                    "string",
                                },
                                Disabled = false,
                                ExposeHeaders = new[]
                                {
                                    "string",
                                },
                                MaxAge = 0,
                            },
                            FaultInjectionPolicy = new GoogleNative.Compute.Beta.Inputs.HttpFaultInjectionArgs
                            {
                                Abort = new GoogleNative.Compute.Beta.Inputs.HttpFaultAbortArgs
                                {
                                    HttpStatus = 0,
                                    Percentage = 0,
                                },
                                Delay = new GoogleNative.Compute.Beta.Inputs.HttpFaultDelayArgs
                                {
                                    FixedDelay = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                                    {
                                        Nanos = 0,
                                        Seconds = "string",
                                    },
                                    Percentage = 0,
                                },
                            },
                            MaxStreamDuration = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            RequestMirrorPolicy = new GoogleNative.Compute.Beta.Inputs.RequestMirrorPolicyArgs
                            {
                                BackendService = "string",
                            },
                            RetryPolicy = new GoogleNative.Compute.Beta.Inputs.HttpRetryPolicyArgs
                            {
                                NumRetries = 0,
                                PerTryTimeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                                {
                                    Nanos = 0,
                                    Seconds = "string",
                                },
                                RetryConditions = new[]
                                {
                                    "string",
                                },
                            },
                            Timeout = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            UrlRewrite = new GoogleNative.Compute.Beta.Inputs.UrlRewriteArgs
                            {
                                HostRewrite = "string",
                                PathPrefixRewrite = "string",
                                PathTemplateRewrite = "string",
                            },
                            WeightedBackendServices = new[]
                            {
                                new GoogleNative.Compute.Beta.Inputs.WeightedBackendServiceArgs
                                {
                                    BackendService = "string",
                                    HeaderAction = new GoogleNative.Compute.Beta.Inputs.HttpHeaderActionArgs
                                    {
                                        RequestHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        RequestHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                        ResponseHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        ResponseHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                    },
                                    Weight = 0,
                                },
                            },
                        },
                        Service = "string",
                        UrlRedirect = new GoogleNative.Compute.Beta.Inputs.HttpRedirectActionArgs
                        {
                            HostRedirect = "string",
                            HttpsRedirect = false,
                            PathRedirect = "string",
                            PrefixRedirect = "string",
                            RedirectResponseCode = GoogleNative.Compute.Beta.HttpRedirectActionRedirectResponseCode.Found,
                            StripQuery = false,
                        },
                    },
                },
            },
        },
        Project = "string",
        RequestId = "string",
        Tests = new[]
        {
            new GoogleNative.Compute.Beta.Inputs.UrlMapTestArgs
            {
                Description = "string",
                ExpectedOutputUrl = "string",
                ExpectedRedirectResponseCode = 0,
                Headers = new[]
                {
                    new GoogleNative.Compute.Beta.Inputs.UrlMapTestHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Host = "string",
                Path = "string",
                Service = "string",
            },
        },
    });
    
    example, err := computebeta.NewUrlMap(ctx, "google-nativeUrlMapResource", &computebeta.UrlMapArgs{
    DefaultCustomErrorResponsePolicy: &compute.CustomErrorResponsePolicyArgs{
    ErrorResponseRules: compute.CustomErrorResponsePolicyCustomErrorResponseRuleArray{
    &compute.CustomErrorResponsePolicyCustomErrorResponseRuleArgs{
    MatchResponseCodes: pulumi.StringArray{
    pulumi.String("string"),
    },
    OverrideResponseCode: pulumi.Int(0),
    Path: pulumi.String("string"),
    },
    },
    ErrorService: pulumi.String("string"),
    },
    DefaultRouteAction: &compute.HttpRouteActionArgs{
    CorsPolicy: &compute.CorsPolicyArgs{
    AllowCredentials: pulumi.Bool(false),
    AllowHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowMethods: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOriginRegexes: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOrigins: pulumi.StringArray{
    pulumi.String("string"),
    },
    Disabled: pulumi.Bool(false),
    ExposeHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    MaxAge: pulumi.Int(0),
    },
    FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    Abort: &compute.HttpFaultAbortArgs{
    HttpStatus: pulumi.Int(0),
    Percentage: pulumi.Float64(0),
    },
    Delay: &compute.HttpFaultDelayArgs{
    FixedDelay: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    Percentage: pulumi.Float64(0),
    },
    },
    MaxStreamDuration: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    BackendService: pulumi.String("string"),
    },
    RetryPolicy: &compute.HttpRetryPolicyArgs{
    NumRetries: pulumi.Int(0),
    PerTryTimeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RetryConditions: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Timeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    UrlRewrite: &compute.UrlRewriteArgs{
    HostRewrite: pulumi.String("string"),
    PathPrefixRewrite: pulumi.String("string"),
    PathTemplateRewrite: pulumi.String("string"),
    },
    WeightedBackendServices: compute.WeightedBackendServiceArray{
    &compute.WeightedBackendServiceArgs{
    BackendService: pulumi.String("string"),
    HeaderAction: &compute.HttpHeaderActionArgs{
    RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    RequestHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    ResponseHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Weight: pulumi.Int(0),
    },
    },
    },
    DefaultService: pulumi.String("string"),
    DefaultUrlRedirect: &compute.HttpRedirectActionArgs{
    HostRedirect: pulumi.String("string"),
    HttpsRedirect: pulumi.Bool(false),
    PathRedirect: pulumi.String("string"),
    PrefixRedirect: pulumi.String("string"),
    RedirectResponseCode: computebeta.HttpRedirectActionRedirectResponseCodeFound,
    StripQuery: pulumi.Bool(false),
    },
    Description: pulumi.String("string"),
    HeaderAction: &compute.HttpHeaderActionArgs{
    RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    RequestHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    ResponseHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    HostRules: compute.HostRuleArray{
    &compute.HostRuleArgs{
    Description: pulumi.String("string"),
    Hosts: pulumi.StringArray{
    pulumi.String("string"),
    },
    PathMatcher: pulumi.String("string"),
    },
    },
    Name: pulumi.String("string"),
    PathMatchers: compute.PathMatcherArray{
    &compute.PathMatcherArgs{
    DefaultCustomErrorResponsePolicy: &compute.CustomErrorResponsePolicyArgs{
    ErrorResponseRules: compute.CustomErrorResponsePolicyCustomErrorResponseRuleArray{
    &compute.CustomErrorResponsePolicyCustomErrorResponseRuleArgs{
    MatchResponseCodes: pulumi.StringArray{
    pulumi.String("string"),
    },
    OverrideResponseCode: pulumi.Int(0),
    Path: pulumi.String("string"),
    },
    },
    ErrorService: pulumi.String("string"),
    },
    DefaultRouteAction: &compute.HttpRouteActionArgs{
    CorsPolicy: &compute.CorsPolicyArgs{
    AllowCredentials: pulumi.Bool(false),
    AllowHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowMethods: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOriginRegexes: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOrigins: pulumi.StringArray{
    pulumi.String("string"),
    },
    Disabled: pulumi.Bool(false),
    ExposeHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    MaxAge: pulumi.Int(0),
    },
    FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    Abort: &compute.HttpFaultAbortArgs{
    HttpStatus: pulumi.Int(0),
    Percentage: pulumi.Float64(0),
    },
    Delay: &compute.HttpFaultDelayArgs{
    FixedDelay: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    Percentage: pulumi.Float64(0),
    },
    },
    MaxStreamDuration: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    BackendService: pulumi.String("string"),
    },
    RetryPolicy: &compute.HttpRetryPolicyArgs{
    NumRetries: pulumi.Int(0),
    PerTryTimeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RetryConditions: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Timeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    UrlRewrite: &compute.UrlRewriteArgs{
    HostRewrite: pulumi.String("string"),
    PathPrefixRewrite: pulumi.String("string"),
    PathTemplateRewrite: pulumi.String("string"),
    },
    WeightedBackendServices: compute.WeightedBackendServiceArray{
    &compute.WeightedBackendServiceArgs{
    BackendService: pulumi.String("string"),
    HeaderAction: &compute.HttpHeaderActionArgs{
    RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    RequestHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    ResponseHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Weight: pulumi.Int(0),
    },
    },
    },
    DefaultService: pulumi.String("string"),
    DefaultUrlRedirect: &compute.HttpRedirectActionArgs{
    HostRedirect: pulumi.String("string"),
    HttpsRedirect: pulumi.Bool(false),
    PathRedirect: pulumi.String("string"),
    PrefixRedirect: pulumi.String("string"),
    RedirectResponseCode: computebeta.HttpRedirectActionRedirectResponseCodeFound,
    StripQuery: pulumi.Bool(false),
    },
    Description: pulumi.String("string"),
    HeaderAction: &compute.HttpHeaderActionArgs{
    RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    RequestHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    ResponseHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Name: pulumi.String("string"),
    PathRules: compute.PathRuleArray{
    &compute.PathRuleArgs{
    CustomErrorResponsePolicy: &compute.CustomErrorResponsePolicyArgs{
    ErrorResponseRules: compute.CustomErrorResponsePolicyCustomErrorResponseRuleArray{
    &compute.CustomErrorResponsePolicyCustomErrorResponseRuleArgs{
    MatchResponseCodes: pulumi.StringArray{
    pulumi.String("string"),
    },
    OverrideResponseCode: pulumi.Int(0),
    Path: pulumi.String("string"),
    },
    },
    ErrorService: pulumi.String("string"),
    },
    Paths: pulumi.StringArray{
    pulumi.String("string"),
    },
    RouteAction: &compute.HttpRouteActionArgs{
    CorsPolicy: &compute.CorsPolicyArgs{
    AllowCredentials: pulumi.Bool(false),
    AllowHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowMethods: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOriginRegexes: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOrigins: pulumi.StringArray{
    pulumi.String("string"),
    },
    Disabled: pulumi.Bool(false),
    ExposeHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    MaxAge: pulumi.Int(0),
    },
    FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    Abort: &compute.HttpFaultAbortArgs{
    HttpStatus: pulumi.Int(0),
    Percentage: pulumi.Float64(0),
    },
    Delay: &compute.HttpFaultDelayArgs{
    FixedDelay: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    Percentage: pulumi.Float64(0),
    },
    },
    MaxStreamDuration: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    BackendService: pulumi.String("string"),
    },
    RetryPolicy: &compute.HttpRetryPolicyArgs{
    NumRetries: pulumi.Int(0),
    PerTryTimeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RetryConditions: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Timeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    UrlRewrite: &compute.UrlRewriteArgs{
    HostRewrite: pulumi.String("string"),
    PathPrefixRewrite: pulumi.String("string"),
    PathTemplateRewrite: pulumi.String("string"),
    },
    WeightedBackendServices: compute.WeightedBackendServiceArray{
    &compute.WeightedBackendServiceArgs{
    BackendService: pulumi.String("string"),
    HeaderAction: &compute.HttpHeaderActionArgs{
    RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    RequestHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    ResponseHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Weight: pulumi.Int(0),
    },
    },
    },
    Service: pulumi.String("string"),
    UrlRedirect: &compute.HttpRedirectActionArgs{
    HostRedirect: pulumi.String("string"),
    HttpsRedirect: pulumi.Bool(false),
    PathRedirect: pulumi.String("string"),
    PrefixRedirect: pulumi.String("string"),
    RedirectResponseCode: computebeta.HttpRedirectActionRedirectResponseCodeFound,
    StripQuery: pulumi.Bool(false),
    },
    },
    },
    RouteRules: compute.HttpRouteRuleArray{
    &compute.HttpRouteRuleArgs{
    CustomErrorResponsePolicy: &compute.CustomErrorResponsePolicyArgs{
    ErrorResponseRules: compute.CustomErrorResponsePolicyCustomErrorResponseRuleArray{
    &compute.CustomErrorResponsePolicyCustomErrorResponseRuleArgs{
    MatchResponseCodes: pulumi.StringArray{
    pulumi.String("string"),
    },
    OverrideResponseCode: pulumi.Int(0),
    Path: pulumi.String("string"),
    },
    },
    ErrorService: pulumi.String("string"),
    },
    Description: pulumi.String("string"),
    HeaderAction: &compute.HttpHeaderActionArgs{
    RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    RequestHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    ResponseHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    HttpFilterConfigs: compute.HttpFilterConfigArray{
    &compute.HttpFilterConfigArgs{
    Config: pulumi.String("string"),
    ConfigTypeUrl: pulumi.String("string"),
    FilterName: pulumi.String("string"),
    },
    },
    HttpFilterMetadata: compute.HttpFilterConfigArray{
    &compute.HttpFilterConfigArgs{
    Config: pulumi.String("string"),
    ConfigTypeUrl: pulumi.String("string"),
    FilterName: pulumi.String("string"),
    },
    },
    MatchRules: compute.HttpRouteRuleMatchArray{
    &compute.HttpRouteRuleMatchArgs{
    FullPathMatch: pulumi.String("string"),
    HeaderMatches: compute.HttpHeaderMatchArray{
    &compute.HttpHeaderMatchArgs{
    ExactMatch: pulumi.String("string"),
    HeaderName: pulumi.String("string"),
    InvertMatch: pulumi.Bool(false),
    PrefixMatch: pulumi.String("string"),
    PresentMatch: pulumi.Bool(false),
    RangeMatch: &compute.Int64RangeMatchArgs{
    RangeEnd: pulumi.String("string"),
    RangeStart: pulumi.String("string"),
    },
    RegexMatch: pulumi.String("string"),
    SuffixMatch: pulumi.String("string"),
    },
    },
    IgnoreCase: pulumi.Bool(false),
    MetadataFilters: compute.MetadataFilterArray{
    &compute.MetadataFilterArgs{
    FilterLabels: compute.MetadataFilterLabelMatchArray{
    &compute.MetadataFilterLabelMatchArgs{
    Name: pulumi.String("string"),
    Value: pulumi.String("string"),
    },
    },
    FilterMatchCriteria: computebeta.MetadataFilterFilterMatchCriteriaMatchAll,
    },
    },
    PathTemplateMatch: pulumi.String("string"),
    PrefixMatch: pulumi.String("string"),
    QueryParameterMatches: compute.HttpQueryParameterMatchArray{
    &compute.HttpQueryParameterMatchArgs{
    ExactMatch: pulumi.String("string"),
    Name: pulumi.String("string"),
    PresentMatch: pulumi.Bool(false),
    RegexMatch: pulumi.String("string"),
    },
    },
    RegexMatch: pulumi.String("string"),
    },
    },
    Priority: pulumi.Int(0),
    RouteAction: &compute.HttpRouteActionArgs{
    CorsPolicy: &compute.CorsPolicyArgs{
    AllowCredentials: pulumi.Bool(false),
    AllowHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowMethods: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOriginRegexes: pulumi.StringArray{
    pulumi.String("string"),
    },
    AllowOrigins: pulumi.StringArray{
    pulumi.String("string"),
    },
    Disabled: pulumi.Bool(false),
    ExposeHeaders: pulumi.StringArray{
    pulumi.String("string"),
    },
    MaxAge: pulumi.Int(0),
    },
    FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    Abort: &compute.HttpFaultAbortArgs{
    HttpStatus: pulumi.Int(0),
    Percentage: pulumi.Float64(0),
    },
    Delay: &compute.HttpFaultDelayArgs{
    FixedDelay: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    Percentage: pulumi.Float64(0),
    },
    },
    MaxStreamDuration: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    BackendService: pulumi.String("string"),
    },
    RetryPolicy: &compute.HttpRetryPolicyArgs{
    NumRetries: pulumi.Int(0),
    PerTryTimeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    RetryConditions: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Timeout: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    UrlRewrite: &compute.UrlRewriteArgs{
    HostRewrite: pulumi.String("string"),
    PathPrefixRewrite: pulumi.String("string"),
    PathTemplateRewrite: pulumi.String("string"),
    },
    WeightedBackendServices: compute.WeightedBackendServiceArray{
    &compute.WeightedBackendServiceArgs{
    BackendService: pulumi.String("string"),
    HeaderAction: &compute.HttpHeaderActionArgs{
    RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    RequestHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    &compute.HttpHeaderOptionArgs{
    HeaderName: pulumi.String("string"),
    HeaderValue: pulumi.String("string"),
    Replace: pulumi.Bool(false),
    },
    },
    ResponseHeadersToRemove: pulumi.StringArray{
    pulumi.String("string"),
    },
    },
    Weight: pulumi.Int(0),
    },
    },
    },
    Service: pulumi.String("string"),
    UrlRedirect: &compute.HttpRedirectActionArgs{
    HostRedirect: pulumi.String("string"),
    HttpsRedirect: pulumi.Bool(false),
    PathRedirect: pulumi.String("string"),
    PrefixRedirect: pulumi.String("string"),
    RedirectResponseCode: computebeta.HttpRedirectActionRedirectResponseCodeFound,
    StripQuery: pulumi.Bool(false),
    },
    },
    },
    },
    },
    Project: pulumi.String("string"),
    RequestId: pulumi.String("string"),
    Tests: compute.UrlMapTestArray{
    &compute.UrlMapTestArgs{
    Description: pulumi.String("string"),
    ExpectedOutputUrl: pulumi.String("string"),
    ExpectedRedirectResponseCode: pulumi.Int(0),
    Headers: compute.UrlMapTestHeaderArray{
    &compute.UrlMapTestHeaderArgs{
    Name: pulumi.String("string"),
    Value: pulumi.String("string"),
    },
    },
    Host: pulumi.String("string"),
    Path: pulumi.String("string"),
    Service: pulumi.String("string"),
    },
    },
    })
    
    var google_nativeUrlMapResource = new UrlMap("google-nativeUrlMapResource", UrlMapArgs.builder()
        .defaultCustomErrorResponsePolicy(CustomErrorResponsePolicyArgs.builder()
            .errorResponseRules(CustomErrorResponsePolicyCustomErrorResponseRuleArgs.builder()
                .matchResponseCodes("string")
                .overrideResponseCode(0)
                .path("string")
                .build())
            .errorService("string")
            .build())
        .defaultRouteAction(HttpRouteActionArgs.builder()
            .corsPolicy(CorsPolicyArgs.builder()
                .allowCredentials(false)
                .allowHeaders("string")
                .allowMethods("string")
                .allowOriginRegexes("string")
                .allowOrigins("string")
                .disabled(false)
                .exposeHeaders("string")
                .maxAge(0)
                .build())
            .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                .abort(HttpFaultAbortArgs.builder()
                    .httpStatus(0)
                    .percentage(0)
                    .build())
                .delay(HttpFaultDelayArgs.builder()
                    .fixedDelay(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .percentage(0)
                    .build())
                .build())
            .maxStreamDuration(DurationArgs.builder()
                .nanos(0)
                .seconds("string")
                .build())
            .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                .backendService("string")
                .build())
            .retryPolicy(HttpRetryPolicyArgs.builder()
                .numRetries(0)
                .perTryTimeout(DurationArgs.builder()
                    .nanos(0)
                    .seconds("string")
                    .build())
                .retryConditions("string")
                .build())
            .timeout(DurationArgs.builder()
                .nanos(0)
                .seconds("string")
                .build())
            .urlRewrite(UrlRewriteArgs.builder()
                .hostRewrite("string")
                .pathPrefixRewrite("string")
                .pathTemplateRewrite("string")
                .build())
            .weightedBackendServices(WeightedBackendServiceArgs.builder()
                .backendService("string")
                .headerAction(HttpHeaderActionArgs.builder()
                    .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .requestHeadersToRemove("string")
                    .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .responseHeadersToRemove("string")
                    .build())
                .weight(0)
                .build())
            .build())
        .defaultService("string")
        .defaultUrlRedirect(HttpRedirectActionArgs.builder()
            .hostRedirect("string")
            .httpsRedirect(false)
            .pathRedirect("string")
            .prefixRedirect("string")
            .redirectResponseCode("FOUND")
            .stripQuery(false)
            .build())
        .description("string")
        .headerAction(HttpHeaderActionArgs.builder()
            .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                .headerName("string")
                .headerValue("string")
                .replace(false)
                .build())
            .requestHeadersToRemove("string")
            .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                .headerName("string")
                .headerValue("string")
                .replace(false)
                .build())
            .responseHeadersToRemove("string")
            .build())
        .hostRules(HostRuleArgs.builder()
            .description("string")
            .hosts("string")
            .pathMatcher("string")
            .build())
        .name("string")
        .pathMatchers(PathMatcherArgs.builder()
            .defaultCustomErrorResponsePolicy(CustomErrorResponsePolicyArgs.builder()
                .errorResponseRules(CustomErrorResponsePolicyCustomErrorResponseRuleArgs.builder()
                    .matchResponseCodes("string")
                    .overrideResponseCode(0)
                    .path("string")
                    .build())
                .errorService("string")
                .build())
            .defaultRouteAction(HttpRouteActionArgs.builder()
                .corsPolicy(CorsPolicyArgs.builder()
                    .allowCredentials(false)
                    .allowHeaders("string")
                    .allowMethods("string")
                    .allowOriginRegexes("string")
                    .allowOrigins("string")
                    .disabled(false)
                    .exposeHeaders("string")
                    .maxAge(0)
                    .build())
                .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                    .abort(HttpFaultAbortArgs.builder()
                        .httpStatus(0)
                        .percentage(0)
                        .build())
                    .delay(HttpFaultDelayArgs.builder()
                        .fixedDelay(DurationArgs.builder()
                            .nanos(0)
                            .seconds("string")
                            .build())
                        .percentage(0)
                        .build())
                    .build())
                .maxStreamDuration(DurationArgs.builder()
                    .nanos(0)
                    .seconds("string")
                    .build())
                .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                    .backendService("string")
                    .build())
                .retryPolicy(HttpRetryPolicyArgs.builder()
                    .numRetries(0)
                    .perTryTimeout(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .retryConditions("string")
                    .build())
                .timeout(DurationArgs.builder()
                    .nanos(0)
                    .seconds("string")
                    .build())
                .urlRewrite(UrlRewriteArgs.builder()
                    .hostRewrite("string")
                    .pathPrefixRewrite("string")
                    .pathTemplateRewrite("string")
                    .build())
                .weightedBackendServices(WeightedBackendServiceArgs.builder()
                    .backendService("string")
                    .headerAction(HttpHeaderActionArgs.builder()
                        .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                            .headerName("string")
                            .headerValue("string")
                            .replace(false)
                            .build())
                        .requestHeadersToRemove("string")
                        .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                            .headerName("string")
                            .headerValue("string")
                            .replace(false)
                            .build())
                        .responseHeadersToRemove("string")
                        .build())
                    .weight(0)
                    .build())
                .build())
            .defaultService("string")
            .defaultUrlRedirect(HttpRedirectActionArgs.builder()
                .hostRedirect("string")
                .httpsRedirect(false)
                .pathRedirect("string")
                .prefixRedirect("string")
                .redirectResponseCode("FOUND")
                .stripQuery(false)
                .build())
            .description("string")
            .headerAction(HttpHeaderActionArgs.builder()
                .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                    .headerName("string")
                    .headerValue("string")
                    .replace(false)
                    .build())
                .requestHeadersToRemove("string")
                .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                    .headerName("string")
                    .headerValue("string")
                    .replace(false)
                    .build())
                .responseHeadersToRemove("string")
                .build())
            .name("string")
            .pathRules(PathRuleArgs.builder()
                .customErrorResponsePolicy(CustomErrorResponsePolicyArgs.builder()
                    .errorResponseRules(CustomErrorResponsePolicyCustomErrorResponseRuleArgs.builder()
                        .matchResponseCodes("string")
                        .overrideResponseCode(0)
                        .path("string")
                        .build())
                    .errorService("string")
                    .build())
                .paths("string")
                .routeAction(HttpRouteActionArgs.builder()
                    .corsPolicy(CorsPolicyArgs.builder()
                        .allowCredentials(false)
                        .allowHeaders("string")
                        .allowMethods("string")
                        .allowOriginRegexes("string")
                        .allowOrigins("string")
                        .disabled(false)
                        .exposeHeaders("string")
                        .maxAge(0)
                        .build())
                    .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                        .abort(HttpFaultAbortArgs.builder()
                            .httpStatus(0)
                            .percentage(0)
                            .build())
                        .delay(HttpFaultDelayArgs.builder()
                            .fixedDelay(DurationArgs.builder()
                                .nanos(0)
                                .seconds("string")
                                .build())
                            .percentage(0)
                            .build())
                        .build())
                    .maxStreamDuration(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                        .backendService("string")
                        .build())
                    .retryPolicy(HttpRetryPolicyArgs.builder()
                        .numRetries(0)
                        .perTryTimeout(DurationArgs.builder()
                            .nanos(0)
                            .seconds("string")
                            .build())
                        .retryConditions("string")
                        .build())
                    .timeout(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .urlRewrite(UrlRewriteArgs.builder()
                        .hostRewrite("string")
                        .pathPrefixRewrite("string")
                        .pathTemplateRewrite("string")
                        .build())
                    .weightedBackendServices(WeightedBackendServiceArgs.builder()
                        .backendService("string")
                        .headerAction(HttpHeaderActionArgs.builder()
                            .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .requestHeadersToRemove("string")
                            .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .responseHeadersToRemove("string")
                            .build())
                        .weight(0)
                        .build())
                    .build())
                .service("string")
                .urlRedirect(HttpRedirectActionArgs.builder()
                    .hostRedirect("string")
                    .httpsRedirect(false)
                    .pathRedirect("string")
                    .prefixRedirect("string")
                    .redirectResponseCode("FOUND")
                    .stripQuery(false)
                    .build())
                .build())
            .routeRules(HttpRouteRuleArgs.builder()
                .customErrorResponsePolicy(CustomErrorResponsePolicyArgs.builder()
                    .errorResponseRules(CustomErrorResponsePolicyCustomErrorResponseRuleArgs.builder()
                        .matchResponseCodes("string")
                        .overrideResponseCode(0)
                        .path("string")
                        .build())
                    .errorService("string")
                    .build())
                .description("string")
                .headerAction(HttpHeaderActionArgs.builder()
                    .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .requestHeadersToRemove("string")
                    .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .responseHeadersToRemove("string")
                    .build())
                .httpFilterConfigs(HttpFilterConfigArgs.builder()
                    .config("string")
                    .configTypeUrl("string")
                    .filterName("string")
                    .build())
                .httpFilterMetadata(HttpFilterConfigArgs.builder()
                    .config("string")
                    .configTypeUrl("string")
                    .filterName("string")
                    .build())
                .matchRules(HttpRouteRuleMatchArgs.builder()
                    .fullPathMatch("string")
                    .headerMatches(HttpHeaderMatchArgs.builder()
                        .exactMatch("string")
                        .headerName("string")
                        .invertMatch(false)
                        .prefixMatch("string")
                        .presentMatch(false)
                        .rangeMatch(Int64RangeMatchArgs.builder()
                            .rangeEnd("string")
                            .rangeStart("string")
                            .build())
                        .regexMatch("string")
                        .suffixMatch("string")
                        .build())
                    .ignoreCase(false)
                    .metadataFilters(MetadataFilterArgs.builder()
                        .filterLabels(MetadataFilterLabelMatchArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .filterMatchCriteria("MATCH_ALL")
                        .build())
                    .pathTemplateMatch("string")
                    .prefixMatch("string")
                    .queryParameterMatches(HttpQueryParameterMatchArgs.builder()
                        .exactMatch("string")
                        .name("string")
                        .presentMatch(false)
                        .regexMatch("string")
                        .build())
                    .regexMatch("string")
                    .build())
                .priority(0)
                .routeAction(HttpRouteActionArgs.builder()
                    .corsPolicy(CorsPolicyArgs.builder()
                        .allowCredentials(false)
                        .allowHeaders("string")
                        .allowMethods("string")
                        .allowOriginRegexes("string")
                        .allowOrigins("string")
                        .disabled(false)
                        .exposeHeaders("string")
                        .maxAge(0)
                        .build())
                    .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                        .abort(HttpFaultAbortArgs.builder()
                            .httpStatus(0)
                            .percentage(0)
                            .build())
                        .delay(HttpFaultDelayArgs.builder()
                            .fixedDelay(DurationArgs.builder()
                                .nanos(0)
                                .seconds("string")
                                .build())
                            .percentage(0)
                            .build())
                        .build())
                    .maxStreamDuration(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                        .backendService("string")
                        .build())
                    .retryPolicy(HttpRetryPolicyArgs.builder()
                        .numRetries(0)
                        .perTryTimeout(DurationArgs.builder()
                            .nanos(0)
                            .seconds("string")
                            .build())
                        .retryConditions("string")
                        .build())
                    .timeout(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .urlRewrite(UrlRewriteArgs.builder()
                        .hostRewrite("string")
                        .pathPrefixRewrite("string")
                        .pathTemplateRewrite("string")
                        .build())
                    .weightedBackendServices(WeightedBackendServiceArgs.builder()
                        .backendService("string")
                        .headerAction(HttpHeaderActionArgs.builder()
                            .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .requestHeadersToRemove("string")
                            .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .responseHeadersToRemove("string")
                            .build())
                        .weight(0)
                        .build())
                    .build())
                .service("string")
                .urlRedirect(HttpRedirectActionArgs.builder()
                    .hostRedirect("string")
                    .httpsRedirect(false)
                    .pathRedirect("string")
                    .prefixRedirect("string")
                    .redirectResponseCode("FOUND")
                    .stripQuery(false)
                    .build())
                .build())
            .build())
        .project("string")
        .requestId("string")
        .tests(UrlMapTestArgs.builder()
            .description("string")
            .expectedOutputUrl("string")
            .expectedRedirectResponseCode(0)
            .headers(UrlMapTestHeaderArgs.builder()
                .name("string")
                .value("string")
                .build())
            .host("string")
            .path("string")
            .service("string")
            .build())
        .build());
    
    google_native_url_map_resource = google_native.compute.beta.UrlMap("google-nativeUrlMapResource",
        default_custom_error_response_policy=google_native.compute.beta.CustomErrorResponsePolicyArgs(
            error_response_rules=[google_native.compute.beta.CustomErrorResponsePolicyCustomErrorResponseRuleArgs(
                match_response_codes=["string"],
                override_response_code=0,
                path="string",
            )],
            error_service="string",
        ),
        default_route_action=google_native.compute.beta.HttpRouteActionArgs(
            cors_policy=google_native.compute.beta.CorsPolicyArgs(
                allow_credentials=False,
                allow_headers=["string"],
                allow_methods=["string"],
                allow_origin_regexes=["string"],
                allow_origins=["string"],
                disabled=False,
                expose_headers=["string"],
                max_age=0,
            ),
            fault_injection_policy=google_native.compute.beta.HttpFaultInjectionArgs(
                abort=google_native.compute.beta.HttpFaultAbortArgs(
                    http_status=0,
                    percentage=0,
                ),
                delay=google_native.compute.beta.HttpFaultDelayArgs(
                    fixed_delay=google_native.compute.beta.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    percentage=0,
                ),
            ),
            max_stream_duration=google_native.compute.beta.DurationArgs(
                nanos=0,
                seconds="string",
            ),
            request_mirror_policy=google_native.compute.beta.RequestMirrorPolicyArgs(
                backend_service="string",
            ),
            retry_policy=google_native.compute.beta.HttpRetryPolicyArgs(
                num_retries=0,
                per_try_timeout=google_native.compute.beta.DurationArgs(
                    nanos=0,
                    seconds="string",
                ),
                retry_conditions=["string"],
            ),
            timeout=google_native.compute.beta.DurationArgs(
                nanos=0,
                seconds="string",
            ),
            url_rewrite=google_native.compute.beta.UrlRewriteArgs(
                host_rewrite="string",
                path_prefix_rewrite="string",
                path_template_rewrite="string",
            ),
            weighted_backend_services=[google_native.compute.beta.WeightedBackendServiceArgs(
                backend_service="string",
                header_action=google_native.compute.beta.HttpHeaderActionArgs(
                    request_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    request_headers_to_remove=["string"],
                    response_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    response_headers_to_remove=["string"],
                ),
                weight=0,
            )],
        ),
        default_service="string",
        default_url_redirect=google_native.compute.beta.HttpRedirectActionArgs(
            host_redirect="string",
            https_redirect=False,
            path_redirect="string",
            prefix_redirect="string",
            redirect_response_code=google_native.compute.beta.HttpRedirectActionRedirectResponseCode.FOUND,
            strip_query=False,
        ),
        description="string",
        header_action=google_native.compute.beta.HttpHeaderActionArgs(
            request_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                header_name="string",
                header_value="string",
                replace=False,
            )],
            request_headers_to_remove=["string"],
            response_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                header_name="string",
                header_value="string",
                replace=False,
            )],
            response_headers_to_remove=["string"],
        ),
        host_rules=[google_native.compute.beta.HostRuleArgs(
            description="string",
            hosts=["string"],
            path_matcher="string",
        )],
        name="string",
        path_matchers=[google_native.compute.beta.PathMatcherArgs(
            default_custom_error_response_policy=google_native.compute.beta.CustomErrorResponsePolicyArgs(
                error_response_rules=[google_native.compute.beta.CustomErrorResponsePolicyCustomErrorResponseRuleArgs(
                    match_response_codes=["string"],
                    override_response_code=0,
                    path="string",
                )],
                error_service="string",
            ),
            default_route_action=google_native.compute.beta.HttpRouteActionArgs(
                cors_policy=google_native.compute.beta.CorsPolicyArgs(
                    allow_credentials=False,
                    allow_headers=["string"],
                    allow_methods=["string"],
                    allow_origin_regexes=["string"],
                    allow_origins=["string"],
                    disabled=False,
                    expose_headers=["string"],
                    max_age=0,
                ),
                fault_injection_policy=google_native.compute.beta.HttpFaultInjectionArgs(
                    abort=google_native.compute.beta.HttpFaultAbortArgs(
                        http_status=0,
                        percentage=0,
                    ),
                    delay=google_native.compute.beta.HttpFaultDelayArgs(
                        fixed_delay=google_native.compute.beta.DurationArgs(
                            nanos=0,
                            seconds="string",
                        ),
                        percentage=0,
                    ),
                ),
                max_stream_duration=google_native.compute.beta.DurationArgs(
                    nanos=0,
                    seconds="string",
                ),
                request_mirror_policy=google_native.compute.beta.RequestMirrorPolicyArgs(
                    backend_service="string",
                ),
                retry_policy=google_native.compute.beta.HttpRetryPolicyArgs(
                    num_retries=0,
                    per_try_timeout=google_native.compute.beta.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    retry_conditions=["string"],
                ),
                timeout=google_native.compute.beta.DurationArgs(
                    nanos=0,
                    seconds="string",
                ),
                url_rewrite=google_native.compute.beta.UrlRewriteArgs(
                    host_rewrite="string",
                    path_prefix_rewrite="string",
                    path_template_rewrite="string",
                ),
                weighted_backend_services=[google_native.compute.beta.WeightedBackendServiceArgs(
                    backend_service="string",
                    header_action=google_native.compute.beta.HttpHeaderActionArgs(
                        request_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                            header_name="string",
                            header_value="string",
                            replace=False,
                        )],
                        request_headers_to_remove=["string"],
                        response_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                            header_name="string",
                            header_value="string",
                            replace=False,
                        )],
                        response_headers_to_remove=["string"],
                    ),
                    weight=0,
                )],
            ),
            default_service="string",
            default_url_redirect=google_native.compute.beta.HttpRedirectActionArgs(
                host_redirect="string",
                https_redirect=False,
                path_redirect="string",
                prefix_redirect="string",
                redirect_response_code=google_native.compute.beta.HttpRedirectActionRedirectResponseCode.FOUND,
                strip_query=False,
            ),
            description="string",
            header_action=google_native.compute.beta.HttpHeaderActionArgs(
                request_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                    header_name="string",
                    header_value="string",
                    replace=False,
                )],
                request_headers_to_remove=["string"],
                response_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                    header_name="string",
                    header_value="string",
                    replace=False,
                )],
                response_headers_to_remove=["string"],
            ),
            name="string",
            path_rules=[google_native.compute.beta.PathRuleArgs(
                custom_error_response_policy=google_native.compute.beta.CustomErrorResponsePolicyArgs(
                    error_response_rules=[google_native.compute.beta.CustomErrorResponsePolicyCustomErrorResponseRuleArgs(
                        match_response_codes=["string"],
                        override_response_code=0,
                        path="string",
                    )],
                    error_service="string",
                ),
                paths=["string"],
                route_action=google_native.compute.beta.HttpRouteActionArgs(
                    cors_policy=google_native.compute.beta.CorsPolicyArgs(
                        allow_credentials=False,
                        allow_headers=["string"],
                        allow_methods=["string"],
                        allow_origin_regexes=["string"],
                        allow_origins=["string"],
                        disabled=False,
                        expose_headers=["string"],
                        max_age=0,
                    ),
                    fault_injection_policy=google_native.compute.beta.HttpFaultInjectionArgs(
                        abort=google_native.compute.beta.HttpFaultAbortArgs(
                            http_status=0,
                            percentage=0,
                        ),
                        delay=google_native.compute.beta.HttpFaultDelayArgs(
                            fixed_delay=google_native.compute.beta.DurationArgs(
                                nanos=0,
                                seconds="string",
                            ),
                            percentage=0,
                        ),
                    ),
                    max_stream_duration=google_native.compute.beta.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    request_mirror_policy=google_native.compute.beta.RequestMirrorPolicyArgs(
                        backend_service="string",
                    ),
                    retry_policy=google_native.compute.beta.HttpRetryPolicyArgs(
                        num_retries=0,
                        per_try_timeout=google_native.compute.beta.DurationArgs(
                            nanos=0,
                            seconds="string",
                        ),
                        retry_conditions=["string"],
                    ),
                    timeout=google_native.compute.beta.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    url_rewrite=google_native.compute.beta.UrlRewriteArgs(
                        host_rewrite="string",
                        path_prefix_rewrite="string",
                        path_template_rewrite="string",
                    ),
                    weighted_backend_services=[google_native.compute.beta.WeightedBackendServiceArgs(
                        backend_service="string",
                        header_action=google_native.compute.beta.HttpHeaderActionArgs(
                            request_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            request_headers_to_remove=["string"],
                            response_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            response_headers_to_remove=["string"],
                        ),
                        weight=0,
                    )],
                ),
                service="string",
                url_redirect=google_native.compute.beta.HttpRedirectActionArgs(
                    host_redirect="string",
                    https_redirect=False,
                    path_redirect="string",
                    prefix_redirect="string",
                    redirect_response_code=google_native.compute.beta.HttpRedirectActionRedirectResponseCode.FOUND,
                    strip_query=False,
                ),
            )],
            route_rules=[google_native.compute.beta.HttpRouteRuleArgs(
                custom_error_response_policy=google_native.compute.beta.CustomErrorResponsePolicyArgs(
                    error_response_rules=[google_native.compute.beta.CustomErrorResponsePolicyCustomErrorResponseRuleArgs(
                        match_response_codes=["string"],
                        override_response_code=0,
                        path="string",
                    )],
                    error_service="string",
                ),
                description="string",
                header_action=google_native.compute.beta.HttpHeaderActionArgs(
                    request_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    request_headers_to_remove=["string"],
                    response_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    response_headers_to_remove=["string"],
                ),
                http_filter_configs=[google_native.compute.beta.HttpFilterConfigArgs(
                    config="string",
                    config_type_url="string",
                    filter_name="string",
                )],
                http_filter_metadata=[google_native.compute.beta.HttpFilterConfigArgs(
                    config="string",
                    config_type_url="string",
                    filter_name="string",
                )],
                match_rules=[google_native.compute.beta.HttpRouteRuleMatchArgs(
                    full_path_match="string",
                    header_matches=[google_native.compute.beta.HttpHeaderMatchArgs(
                        exact_match="string",
                        header_name="string",
                        invert_match=False,
                        prefix_match="string",
                        present_match=False,
                        range_match=google_native.compute.beta.Int64RangeMatchArgs(
                            range_end="string",
                            range_start="string",
                        ),
                        regex_match="string",
                        suffix_match="string",
                    )],
                    ignore_case=False,
                    metadata_filters=[google_native.compute.beta.MetadataFilterArgs(
                        filter_labels=[google_native.compute.beta.MetadataFilterLabelMatchArgs(
                            name="string",
                            value="string",
                        )],
                        filter_match_criteria=google_native.compute.beta.MetadataFilterFilterMatchCriteria.MATCH_ALL,
                    )],
                    path_template_match="string",
                    prefix_match="string",
                    query_parameter_matches=[google_native.compute.beta.HttpQueryParameterMatchArgs(
                        exact_match="string",
                        name="string",
                        present_match=False,
                        regex_match="string",
                    )],
                    regex_match="string",
                )],
                priority=0,
                route_action=google_native.compute.beta.HttpRouteActionArgs(
                    cors_policy=google_native.compute.beta.CorsPolicyArgs(
                        allow_credentials=False,
                        allow_headers=["string"],
                        allow_methods=["string"],
                        allow_origin_regexes=["string"],
                        allow_origins=["string"],
                        disabled=False,
                        expose_headers=["string"],
                        max_age=0,
                    ),
                    fault_injection_policy=google_native.compute.beta.HttpFaultInjectionArgs(
                        abort=google_native.compute.beta.HttpFaultAbortArgs(
                            http_status=0,
                            percentage=0,
                        ),
                        delay=google_native.compute.beta.HttpFaultDelayArgs(
                            fixed_delay=google_native.compute.beta.DurationArgs(
                                nanos=0,
                                seconds="string",
                            ),
                            percentage=0,
                        ),
                    ),
                    max_stream_duration=google_native.compute.beta.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    request_mirror_policy=google_native.compute.beta.RequestMirrorPolicyArgs(
                        backend_service="string",
                    ),
                    retry_policy=google_native.compute.beta.HttpRetryPolicyArgs(
                        num_retries=0,
                        per_try_timeout=google_native.compute.beta.DurationArgs(
                            nanos=0,
                            seconds="string",
                        ),
                        retry_conditions=["string"],
                    ),
                    timeout=google_native.compute.beta.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    url_rewrite=google_native.compute.beta.UrlRewriteArgs(
                        host_rewrite="string",
                        path_prefix_rewrite="string",
                        path_template_rewrite="string",
                    ),
                    weighted_backend_services=[google_native.compute.beta.WeightedBackendServiceArgs(
                        backend_service="string",
                        header_action=google_native.compute.beta.HttpHeaderActionArgs(
                            request_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            request_headers_to_remove=["string"],
                            response_headers_to_add=[google_native.compute.beta.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            response_headers_to_remove=["string"],
                        ),
                        weight=0,
                    )],
                ),
                service="string",
                url_redirect=google_native.compute.beta.HttpRedirectActionArgs(
                    host_redirect="string",
                    https_redirect=False,
                    path_redirect="string",
                    prefix_redirect="string",
                    redirect_response_code=google_native.compute.beta.HttpRedirectActionRedirectResponseCode.FOUND,
                    strip_query=False,
                ),
            )],
        )],
        project="string",
        request_id="string",
        tests=[google_native.compute.beta.UrlMapTestArgs(
            description="string",
            expected_output_url="string",
            expected_redirect_response_code=0,
            headers=[google_native.compute.beta.UrlMapTestHeaderArgs(
                name="string",
                value="string",
            )],
            host="string",
            path="string",
            service="string",
        )])
    
    const google_nativeUrlMapResource = new google_native.compute.beta.UrlMap("google-nativeUrlMapResource", {
        defaultCustomErrorResponsePolicy: {
            errorResponseRules: [{
                matchResponseCodes: ["string"],
                overrideResponseCode: 0,
                path: "string",
            }],
            errorService: "string",
        },
        defaultRouteAction: {
            corsPolicy: {
                allowCredentials: false,
                allowHeaders: ["string"],
                allowMethods: ["string"],
                allowOriginRegexes: ["string"],
                allowOrigins: ["string"],
                disabled: false,
                exposeHeaders: ["string"],
                maxAge: 0,
            },
            faultInjectionPolicy: {
                abort: {
                    httpStatus: 0,
                    percentage: 0,
                },
                delay: {
                    fixedDelay: {
                        nanos: 0,
                        seconds: "string",
                    },
                    percentage: 0,
                },
            },
            maxStreamDuration: {
                nanos: 0,
                seconds: "string",
            },
            requestMirrorPolicy: {
                backendService: "string",
            },
            retryPolicy: {
                numRetries: 0,
                perTryTimeout: {
                    nanos: 0,
                    seconds: "string",
                },
                retryConditions: ["string"],
            },
            timeout: {
                nanos: 0,
                seconds: "string",
            },
            urlRewrite: {
                hostRewrite: "string",
                pathPrefixRewrite: "string",
                pathTemplateRewrite: "string",
            },
            weightedBackendServices: [{
                backendService: "string",
                headerAction: {
                    requestHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    requestHeadersToRemove: ["string"],
                    responseHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    responseHeadersToRemove: ["string"],
                },
                weight: 0,
            }],
        },
        defaultService: "string",
        defaultUrlRedirect: {
            hostRedirect: "string",
            httpsRedirect: false,
            pathRedirect: "string",
            prefixRedirect: "string",
            redirectResponseCode: google_native.compute.beta.HttpRedirectActionRedirectResponseCode.Found,
            stripQuery: false,
        },
        description: "string",
        headerAction: {
            requestHeadersToAdd: [{
                headerName: "string",
                headerValue: "string",
                replace: false,
            }],
            requestHeadersToRemove: ["string"],
            responseHeadersToAdd: [{
                headerName: "string",
                headerValue: "string",
                replace: false,
            }],
            responseHeadersToRemove: ["string"],
        },
        hostRules: [{
            description: "string",
            hosts: ["string"],
            pathMatcher: "string",
        }],
        name: "string",
        pathMatchers: [{
            defaultCustomErrorResponsePolicy: {
                errorResponseRules: [{
                    matchResponseCodes: ["string"],
                    overrideResponseCode: 0,
                    path: "string",
                }],
                errorService: "string",
            },
            defaultRouteAction: {
                corsPolicy: {
                    allowCredentials: false,
                    allowHeaders: ["string"],
                    allowMethods: ["string"],
                    allowOriginRegexes: ["string"],
                    allowOrigins: ["string"],
                    disabled: false,
                    exposeHeaders: ["string"],
                    maxAge: 0,
                },
                faultInjectionPolicy: {
                    abort: {
                        httpStatus: 0,
                        percentage: 0,
                    },
                    delay: {
                        fixedDelay: {
                            nanos: 0,
                            seconds: "string",
                        },
                        percentage: 0,
                    },
                },
                maxStreamDuration: {
                    nanos: 0,
                    seconds: "string",
                },
                requestMirrorPolicy: {
                    backendService: "string",
                },
                retryPolicy: {
                    numRetries: 0,
                    perTryTimeout: {
                        nanos: 0,
                        seconds: "string",
                    },
                    retryConditions: ["string"],
                },
                timeout: {
                    nanos: 0,
                    seconds: "string",
                },
                urlRewrite: {
                    hostRewrite: "string",
                    pathPrefixRewrite: "string",
                    pathTemplateRewrite: "string",
                },
                weightedBackendServices: [{
                    backendService: "string",
                    headerAction: {
                        requestHeadersToAdd: [{
                            headerName: "string",
                            headerValue: "string",
                            replace: false,
                        }],
                        requestHeadersToRemove: ["string"],
                        responseHeadersToAdd: [{
                            headerName: "string",
                            headerValue: "string",
                            replace: false,
                        }],
                        responseHeadersToRemove: ["string"],
                    },
                    weight: 0,
                }],
            },
            defaultService: "string",
            defaultUrlRedirect: {
                hostRedirect: "string",
                httpsRedirect: false,
                pathRedirect: "string",
                prefixRedirect: "string",
                redirectResponseCode: google_native.compute.beta.HttpRedirectActionRedirectResponseCode.Found,
                stripQuery: false,
            },
            description: "string",
            headerAction: {
                requestHeadersToAdd: [{
                    headerName: "string",
                    headerValue: "string",
                    replace: false,
                }],
                requestHeadersToRemove: ["string"],
                responseHeadersToAdd: [{
                    headerName: "string",
                    headerValue: "string",
                    replace: false,
                }],
                responseHeadersToRemove: ["string"],
            },
            name: "string",
            pathRules: [{
                customErrorResponsePolicy: {
                    errorResponseRules: [{
                        matchResponseCodes: ["string"],
                        overrideResponseCode: 0,
                        path: "string",
                    }],
                    errorService: "string",
                },
                paths: ["string"],
                routeAction: {
                    corsPolicy: {
                        allowCredentials: false,
                        allowHeaders: ["string"],
                        allowMethods: ["string"],
                        allowOriginRegexes: ["string"],
                        allowOrigins: ["string"],
                        disabled: false,
                        exposeHeaders: ["string"],
                        maxAge: 0,
                    },
                    faultInjectionPolicy: {
                        abort: {
                            httpStatus: 0,
                            percentage: 0,
                        },
                        delay: {
                            fixedDelay: {
                                nanos: 0,
                                seconds: "string",
                            },
                            percentage: 0,
                        },
                    },
                    maxStreamDuration: {
                        nanos: 0,
                        seconds: "string",
                    },
                    requestMirrorPolicy: {
                        backendService: "string",
                    },
                    retryPolicy: {
                        numRetries: 0,
                        perTryTimeout: {
                            nanos: 0,
                            seconds: "string",
                        },
                        retryConditions: ["string"],
                    },
                    timeout: {
                        nanos: 0,
                        seconds: "string",
                    },
                    urlRewrite: {
                        hostRewrite: "string",
                        pathPrefixRewrite: "string",
                        pathTemplateRewrite: "string",
                    },
                    weightedBackendServices: [{
                        backendService: "string",
                        headerAction: {
                            requestHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            requestHeadersToRemove: ["string"],
                            responseHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            responseHeadersToRemove: ["string"],
                        },
                        weight: 0,
                    }],
                },
                service: "string",
                urlRedirect: {
                    hostRedirect: "string",
                    httpsRedirect: false,
                    pathRedirect: "string",
                    prefixRedirect: "string",
                    redirectResponseCode: google_native.compute.beta.HttpRedirectActionRedirectResponseCode.Found,
                    stripQuery: false,
                },
            }],
            routeRules: [{
                customErrorResponsePolicy: {
                    errorResponseRules: [{
                        matchResponseCodes: ["string"],
                        overrideResponseCode: 0,
                        path: "string",
                    }],
                    errorService: "string",
                },
                description: "string",
                headerAction: {
                    requestHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    requestHeadersToRemove: ["string"],
                    responseHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    responseHeadersToRemove: ["string"],
                },
                httpFilterConfigs: [{
                    config: "string",
                    configTypeUrl: "string",
                    filterName: "string",
                }],
                httpFilterMetadata: [{
                    config: "string",
                    configTypeUrl: "string",
                    filterName: "string",
                }],
                matchRules: [{
                    fullPathMatch: "string",
                    headerMatches: [{
                        exactMatch: "string",
                        headerName: "string",
                        invertMatch: false,
                        prefixMatch: "string",
                        presentMatch: false,
                        rangeMatch: {
                            rangeEnd: "string",
                            rangeStart: "string",
                        },
                        regexMatch: "string",
                        suffixMatch: "string",
                    }],
                    ignoreCase: false,
                    metadataFilters: [{
                        filterLabels: [{
                            name: "string",
                            value: "string",
                        }],
                        filterMatchCriteria: google_native.compute.beta.MetadataFilterFilterMatchCriteria.MatchAll,
                    }],
                    pathTemplateMatch: "string",
                    prefixMatch: "string",
                    queryParameterMatches: [{
                        exactMatch: "string",
                        name: "string",
                        presentMatch: false,
                        regexMatch: "string",
                    }],
                    regexMatch: "string",
                }],
                priority: 0,
                routeAction: {
                    corsPolicy: {
                        allowCredentials: false,
                        allowHeaders: ["string"],
                        allowMethods: ["string"],
                        allowOriginRegexes: ["string"],
                        allowOrigins: ["string"],
                        disabled: false,
                        exposeHeaders: ["string"],
                        maxAge: 0,
                    },
                    faultInjectionPolicy: {
                        abort: {
                            httpStatus: 0,
                            percentage: 0,
                        },
                        delay: {
                            fixedDelay: {
                                nanos: 0,
                                seconds: "string",
                            },
                            percentage: 0,
                        },
                    },
                    maxStreamDuration: {
                        nanos: 0,
                        seconds: "string",
                    },
                    requestMirrorPolicy: {
                        backendService: "string",
                    },
                    retryPolicy: {
                        numRetries: 0,
                        perTryTimeout: {
                            nanos: 0,
                            seconds: "string",
                        },
                        retryConditions: ["string"],
                    },
                    timeout: {
                        nanos: 0,
                        seconds: "string",
                    },
                    urlRewrite: {
                        hostRewrite: "string",
                        pathPrefixRewrite: "string",
                        pathTemplateRewrite: "string",
                    },
                    weightedBackendServices: [{
                        backendService: "string",
                        headerAction: {
                            requestHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            requestHeadersToRemove: ["string"],
                            responseHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            responseHeadersToRemove: ["string"],
                        },
                        weight: 0,
                    }],
                },
                service: "string",
                urlRedirect: {
                    hostRedirect: "string",
                    httpsRedirect: false,
                    pathRedirect: "string",
                    prefixRedirect: "string",
                    redirectResponseCode: google_native.compute.beta.HttpRedirectActionRedirectResponseCode.Found,
                    stripQuery: false,
                },
            }],
        }],
        project: "string",
        requestId: "string",
        tests: [{
            description: "string",
            expectedOutputUrl: "string",
            expectedRedirectResponseCode: 0,
            headers: [{
                name: "string",
                value: "string",
            }],
            host: "string",
            path: "string",
            service: "string",
        }],
    });
    
    type: google-native:compute/beta:UrlMap
    properties:
        defaultCustomErrorResponsePolicy:
            errorResponseRules:
                - matchResponseCodes:
                    - string
                  overrideResponseCode: 0
                  path: string
            errorService: string
        defaultRouteAction:
            corsPolicy:
                allowCredentials: false
                allowHeaders:
                    - string
                allowMethods:
                    - string
                allowOriginRegexes:
                    - string
                allowOrigins:
                    - string
                disabled: false
                exposeHeaders:
                    - string
                maxAge: 0
            faultInjectionPolicy:
                abort:
                    httpStatus: 0
                    percentage: 0
                delay:
                    fixedDelay:
                        nanos: 0
                        seconds: string
                    percentage: 0
            maxStreamDuration:
                nanos: 0
                seconds: string
            requestMirrorPolicy:
                backendService: string
            retryPolicy:
                numRetries: 0
                perTryTimeout:
                    nanos: 0
                    seconds: string
                retryConditions:
                    - string
            timeout:
                nanos: 0
                seconds: string
            urlRewrite:
                hostRewrite: string
                pathPrefixRewrite: string
                pathTemplateRewrite: string
            weightedBackendServices:
                - backendService: string
                  headerAction:
                    requestHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    requestHeadersToRemove:
                        - string
                    responseHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    responseHeadersToRemove:
                        - string
                  weight: 0
        defaultService: string
        defaultUrlRedirect:
            hostRedirect: string
            httpsRedirect: false
            pathRedirect: string
            prefixRedirect: string
            redirectResponseCode: FOUND
            stripQuery: false
        description: string
        headerAction:
            requestHeadersToAdd:
                - headerName: string
                  headerValue: string
                  replace: false
            requestHeadersToRemove:
                - string
            responseHeadersToAdd:
                - headerName: string
                  headerValue: string
                  replace: false
            responseHeadersToRemove:
                - string
        hostRules:
            - description: string
              hosts:
                - string
              pathMatcher: string
        name: string
        pathMatchers:
            - defaultCustomErrorResponsePolicy:
                errorResponseRules:
                    - matchResponseCodes:
                        - string
                      overrideResponseCode: 0
                      path: string
                errorService: string
              defaultRouteAction:
                corsPolicy:
                    allowCredentials: false
                    allowHeaders:
                        - string
                    allowMethods:
                        - string
                    allowOriginRegexes:
                        - string
                    allowOrigins:
                        - string
                    disabled: false
                    exposeHeaders:
                        - string
                    maxAge: 0
                faultInjectionPolicy:
                    abort:
                        httpStatus: 0
                        percentage: 0
                    delay:
                        fixedDelay:
                            nanos: 0
                            seconds: string
                        percentage: 0
                maxStreamDuration:
                    nanos: 0
                    seconds: string
                requestMirrorPolicy:
                    backendService: string
                retryPolicy:
                    numRetries: 0
                    perTryTimeout:
                        nanos: 0
                        seconds: string
                    retryConditions:
                        - string
                timeout:
                    nanos: 0
                    seconds: string
                urlRewrite:
                    hostRewrite: string
                    pathPrefixRewrite: string
                    pathTemplateRewrite: string
                weightedBackendServices:
                    - backendService: string
                      headerAction:
                        requestHeadersToAdd:
                            - headerName: string
                              headerValue: string
                              replace: false
                        requestHeadersToRemove:
                            - string
                        responseHeadersToAdd:
                            - headerName: string
                              headerValue: string
                              replace: false
                        responseHeadersToRemove:
                            - string
                      weight: 0
              defaultService: string
              defaultUrlRedirect:
                hostRedirect: string
                httpsRedirect: false
                pathRedirect: string
                prefixRedirect: string
                redirectResponseCode: FOUND
                stripQuery: false
              description: string
              headerAction:
                requestHeadersToAdd:
                    - headerName: string
                      headerValue: string
                      replace: false
                requestHeadersToRemove:
                    - string
                responseHeadersToAdd:
                    - headerName: string
                      headerValue: string
                      replace: false
                responseHeadersToRemove:
                    - string
              name: string
              pathRules:
                - customErrorResponsePolicy:
                    errorResponseRules:
                        - matchResponseCodes:
                            - string
                          overrideResponseCode: 0
                          path: string
                    errorService: string
                  paths:
                    - string
                  routeAction:
                    corsPolicy:
                        allowCredentials: false
                        allowHeaders:
                            - string
                        allowMethods:
                            - string
                        allowOriginRegexes:
                            - string
                        allowOrigins:
                            - string
                        disabled: false
                        exposeHeaders:
                            - string
                        maxAge: 0
                    faultInjectionPolicy:
                        abort:
                            httpStatus: 0
                            percentage: 0
                        delay:
                            fixedDelay:
                                nanos: 0
                                seconds: string
                            percentage: 0
                    maxStreamDuration:
                        nanos: 0
                        seconds: string
                    requestMirrorPolicy:
                        backendService: string
                    retryPolicy:
                        numRetries: 0
                        perTryTimeout:
                            nanos: 0
                            seconds: string
                        retryConditions:
                            - string
                    timeout:
                        nanos: 0
                        seconds: string
                    urlRewrite:
                        hostRewrite: string
                        pathPrefixRewrite: string
                        pathTemplateRewrite: string
                    weightedBackendServices:
                        - backendService: string
                          headerAction:
                            requestHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            requestHeadersToRemove:
                                - string
                            responseHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            responseHeadersToRemove:
                                - string
                          weight: 0
                  service: string
                  urlRedirect:
                    hostRedirect: string
                    httpsRedirect: false
                    pathRedirect: string
                    prefixRedirect: string
                    redirectResponseCode: FOUND
                    stripQuery: false
              routeRules:
                - customErrorResponsePolicy:
                    errorResponseRules:
                        - matchResponseCodes:
                            - string
                          overrideResponseCode: 0
                          path: string
                    errorService: string
                  description: string
                  headerAction:
                    requestHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    requestHeadersToRemove:
                        - string
                    responseHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    responseHeadersToRemove:
                        - string
                  httpFilterConfigs:
                    - config: string
                      configTypeUrl: string
                      filterName: string
                  httpFilterMetadata:
                    - config: string
                      configTypeUrl: string
                      filterName: string
                  matchRules:
                    - fullPathMatch: string
                      headerMatches:
                        - exactMatch: string
                          headerName: string
                          invertMatch: false
                          prefixMatch: string
                          presentMatch: false
                          rangeMatch:
                            rangeEnd: string
                            rangeStart: string
                          regexMatch: string
                          suffixMatch: string
                      ignoreCase: false
                      metadataFilters:
                        - filterLabels:
                            - name: string
                              value: string
                          filterMatchCriteria: MATCH_ALL
                      pathTemplateMatch: string
                      prefixMatch: string
                      queryParameterMatches:
                        - exactMatch: string
                          name: string
                          presentMatch: false
                          regexMatch: string
                      regexMatch: string
                  priority: 0
                  routeAction:
                    corsPolicy:
                        allowCredentials: false
                        allowHeaders:
                            - string
                        allowMethods:
                            - string
                        allowOriginRegexes:
                            - string
                        allowOrigins:
                            - string
                        disabled: false
                        exposeHeaders:
                            - string
                        maxAge: 0
                    faultInjectionPolicy:
                        abort:
                            httpStatus: 0
                            percentage: 0
                        delay:
                            fixedDelay:
                                nanos: 0
                                seconds: string
                            percentage: 0
                    maxStreamDuration:
                        nanos: 0
                        seconds: string
                    requestMirrorPolicy:
                        backendService: string
                    retryPolicy:
                        numRetries: 0
                        perTryTimeout:
                            nanos: 0
                            seconds: string
                        retryConditions:
                            - string
                    timeout:
                        nanos: 0
                        seconds: string
                    urlRewrite:
                        hostRewrite: string
                        pathPrefixRewrite: string
                        pathTemplateRewrite: string
                    weightedBackendServices:
                        - backendService: string
                          headerAction:
                            requestHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            requestHeadersToRemove:
                                - string
                            responseHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            responseHeadersToRemove:
                                - string
                          weight: 0
                  service: string
                  urlRedirect:
                    hostRedirect: string
                    httpsRedirect: false
                    pathRedirect: string
                    prefixRedirect: string
                    redirectResponseCode: FOUND
                    stripQuery: false
        project: string
        requestId: string
        tests:
            - description: string
              expectedOutputUrl: string
              expectedRedirectResponseCode: 0
              headers:
                - name: string
                  value: string
              host: string
              path: string
              service: string
    

    UrlMap Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The UrlMap resource accepts the following input properties:

    DefaultCustomErrorResponsePolicy Pulumi.GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicy
    defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error. This policy takes effect at the load balancer level and applies only when no policy has been defined for the error code at lower levels like PathMatcher, RouteRule and PathRule within this UrlMap. For example, consider a UrlMap with the following configuration: - defaultCustomErrorResponsePolicy containing policies for responding to 5xx and 4xx errors - A PathMatcher configured for *.example.com has defaultCustomErrorResponsePolicy for 4xx. If a request for http://www.example.com/ encounters a 404, the policy in pathMatcher.defaultCustomErrorResponsePolicy will be enforced. When the request for http://www.example.com/ encounters a 502, the policy in UrlMap.defaultCustomErrorResponsePolicy will be enforced. When a request that does not match any host in *.example.com such as http://www.myotherexample.com/, encounters a 404, UrlMap.defaultCustomErrorResponsePolicy takes effect. When used in conjunction with defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client. defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
    DefaultRouteAction Pulumi.GoogleNative.Compute.Beta.Inputs.HttpRouteAction
    defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    DefaultService string
    The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    DefaultUrlRedirect Pulumi.GoogleNative.Compute.Beta.Inputs.HttpRedirectAction
    When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    HeaderAction Pulumi.GoogleNative.Compute.Beta.Inputs.HttpHeaderAction
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. headerAction is not supported for load balancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    HostRules List<Pulumi.GoogleNative.Compute.Beta.Inputs.HostRule>
    The list of host rules to use against the URL.
    Name string
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    PathMatchers List<Pulumi.GoogleNative.Compute.Beta.Inputs.PathMatcher>
    The list of named PathMatchers to use against the URL.
    Project string
    RequestId string
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    Tests List<Pulumi.GoogleNative.Compute.Beta.Inputs.UrlMapTest>
    The list of expected URL mapping tests. Request to update the UrlMap succeeds only if all test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    DefaultCustomErrorResponsePolicy CustomErrorResponsePolicyArgs
    defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error. This policy takes effect at the load balancer level and applies only when no policy has been defined for the error code at lower levels like PathMatcher, RouteRule and PathRule within this UrlMap. For example, consider a UrlMap with the following configuration: - defaultCustomErrorResponsePolicy containing policies for responding to 5xx and 4xx errors - A PathMatcher configured for *.example.com has defaultCustomErrorResponsePolicy for 4xx. If a request for http://www.example.com/ encounters a 404, the policy in pathMatcher.defaultCustomErrorResponsePolicy will be enforced. When the request for http://www.example.com/ encounters a 502, the policy in UrlMap.defaultCustomErrorResponsePolicy will be enforced. When a request that does not match any host in *.example.com such as http://www.myotherexample.com/, encounters a 404, UrlMap.defaultCustomErrorResponsePolicy takes effect. When used in conjunction with defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client. defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
    DefaultRouteAction HttpRouteActionArgs
    defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    DefaultService string
    The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    DefaultUrlRedirect HttpRedirectActionArgs
    When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    HeaderAction HttpHeaderActionArgs
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. headerAction is not supported for load balancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    HostRules []HostRuleArgs
    The list of host rules to use against the URL.
    Name string
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    PathMatchers []PathMatcherArgs
    The list of named PathMatchers to use against the URL.
    Project string
    RequestId string
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    Tests []UrlMapTestArgs
    The list of expected URL mapping tests. Request to update the UrlMap succeeds only if all test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    defaultCustomErrorResponsePolicy CustomErrorResponsePolicy
    defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error. This policy takes effect at the load balancer level and applies only when no policy has been defined for the error code at lower levels like PathMatcher, RouteRule and PathRule within this UrlMap. For example, consider a UrlMap with the following configuration: - defaultCustomErrorResponsePolicy containing policies for responding to 5xx and 4xx errors - A PathMatcher configured for *.example.com has defaultCustomErrorResponsePolicy for 4xx. If a request for http://www.example.com/ encounters a 404, the policy in pathMatcher.defaultCustomErrorResponsePolicy will be enforced. When the request for http://www.example.com/ encounters a 502, the policy in UrlMap.defaultCustomErrorResponsePolicy will be enforced. When a request that does not match any host in *.example.com such as http://www.myotherexample.com/, encounters a 404, UrlMap.defaultCustomErrorResponsePolicy takes effect. When used in conjunction with defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client. defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
    defaultRouteAction HttpRouteAction
    defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultService String
    The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultUrlRedirect HttpRedirectAction
    When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    headerAction HttpHeaderAction
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. headerAction is not supported for load balancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    hostRules List<HostRule>
    The list of host rules to use against the URL.
    name String
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    pathMatchers List<PathMatcher>
    The list of named PathMatchers to use against the URL.
    project String
    requestId String
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    tests List<UrlMapTest>
    The list of expected URL mapping tests. Request to update the UrlMap succeeds only if all test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    defaultCustomErrorResponsePolicy CustomErrorResponsePolicy
    defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error. This policy takes effect at the load balancer level and applies only when no policy has been defined for the error code at lower levels like PathMatcher, RouteRule and PathRule within this UrlMap. For example, consider a UrlMap with the following configuration: - defaultCustomErrorResponsePolicy containing policies for responding to 5xx and 4xx errors - A PathMatcher configured for *.example.com has defaultCustomErrorResponsePolicy for 4xx. If a request for http://www.example.com/ encounters a 404, the policy in pathMatcher.defaultCustomErrorResponsePolicy will be enforced. When the request for http://www.example.com/ encounters a 502, the policy in UrlMap.defaultCustomErrorResponsePolicy will be enforced. When a request that does not match any host in *.example.com such as http://www.myotherexample.com/, encounters a 404, UrlMap.defaultCustomErrorResponsePolicy takes effect. When used in conjunction with defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client. defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
    defaultRouteAction HttpRouteAction
    defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultService string
    The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultUrlRedirect HttpRedirectAction
    When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    headerAction HttpHeaderAction
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. headerAction is not supported for load balancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    hostRules HostRule[]
    The list of host rules to use against the URL.
    name string
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    pathMatchers PathMatcher[]
    The list of named PathMatchers to use against the URL.
    project string
    requestId string
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    tests UrlMapTest[]
    The list of expected URL mapping tests. Request to update the UrlMap succeeds only if all test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    default_custom_error_response_policy CustomErrorResponsePolicyArgs
    defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error. This policy takes effect at the load balancer level and applies only when no policy has been defined for the error code at lower levels like PathMatcher, RouteRule and PathRule within this UrlMap. For example, consider a UrlMap with the following configuration: - defaultCustomErrorResponsePolicy containing policies for responding to 5xx and 4xx errors - A PathMatcher configured for *.example.com has defaultCustomErrorResponsePolicy for 4xx. If a request for http://www.example.com/ encounters a 404, the policy in pathMatcher.defaultCustomErrorResponsePolicy will be enforced. When the request for http://www.example.com/ encounters a 502, the policy in UrlMap.defaultCustomErrorResponsePolicy will be enforced. When a request that does not match any host in *.example.com such as http://www.myotherexample.com/, encounters a 404, UrlMap.defaultCustomErrorResponsePolicy takes effect. When used in conjunction with defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client. defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
    default_route_action HttpRouteActionArgs
    defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    default_service str
    The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    default_url_redirect HttpRedirectActionArgs
    When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    header_action HttpHeaderActionArgs
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. headerAction is not supported for load balancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    host_rules Sequence[HostRuleArgs]
    The list of host rules to use against the URL.
    name str
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    path_matchers Sequence[PathMatcherArgs]
    The list of named PathMatchers to use against the URL.
    project str
    request_id str
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    tests Sequence[UrlMapTestArgs]
    The list of expected URL mapping tests. Request to update the UrlMap succeeds only if all test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    defaultCustomErrorResponsePolicy Property Map
    defaultCustomErrorResponsePolicy specifies how the Load Balancer returns error responses when BackendServiceor BackendBucket responds with an error. This policy takes effect at the load balancer level and applies only when no policy has been defined for the error code at lower levels like PathMatcher, RouteRule and PathRule within this UrlMap. For example, consider a UrlMap with the following configuration: - defaultCustomErrorResponsePolicy containing policies for responding to 5xx and 4xx errors - A PathMatcher configured for *.example.com has defaultCustomErrorResponsePolicy for 4xx. If a request for http://www.example.com/ encounters a 404, the policy in pathMatcher.defaultCustomErrorResponsePolicy will be enforced. When the request for http://www.example.com/ encounters a 502, the policy in UrlMap.defaultCustomErrorResponsePolicy will be enforced. When a request that does not match any host in *.example.com such as http://www.myotherexample.com/, encounters a 404, UrlMap.defaultCustomErrorResponsePolicy takes effect. When used in conjunction with defaultRouteAction.retryPolicy, retries take precedence. Only once all retries are exhausted, the defaultCustomErrorResponsePolicy is applied. While attempting a retry, if load balancer is successful in reaching the service, the defaultCustomErrorResponsePolicy is ignored and the response from the service is returned to the client. defaultCustomErrorResponsePolicy is supported only for global external Application Load Balancers.
    defaultRouteAction Property Map
    defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultService String
    The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultUrlRedirect Property Map
    When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    headerAction Property Map
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. headerAction is not supported for load balancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    hostRules List<Property Map>
    The list of host rules to use against the URL.
    name String
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    pathMatchers List<Property Map>
    The list of named PathMatchers to use against the URL.
    project String
    requestId String
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    tests List<Property Map>
    The list of expected URL mapping tests. Request to update the UrlMap succeeds only if all test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the UrlMap resource produces the following output properties:

    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    Fingerprint string
    Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field is ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap.
    Id string
    The provider-assigned unique ID for this managed resource.
    Kind string
    Type of the resource. Always compute#urlMaps for url maps.
    Region string
    URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
    SelfLink string
    Server-defined URL for the resource.
    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    Fingerprint string
    Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field is ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap.
    Id string
    The provider-assigned unique ID for this managed resource.
    Kind string
    Type of the resource. Always compute#urlMaps for url maps.
    Region string
    URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
    SelfLink string
    Server-defined URL for the resource.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    fingerprint String
    Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field is ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap.
    id String
    The provider-assigned unique ID for this managed resource.
    kind String
    Type of the resource. Always compute#urlMaps for url maps.
    region String
    URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
    selfLink String
    Server-defined URL for the resource.
    creationTimestamp string
    Creation timestamp in RFC3339 text format.
    fingerprint string
    Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field is ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap.
    id string
    The provider-assigned unique ID for this managed resource.
    kind string
    Type of the resource. Always compute#urlMaps for url maps.
    region string
    URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
    selfLink string
    Server-defined URL for the resource.
    creation_timestamp str
    Creation timestamp in RFC3339 text format.
    fingerprint str
    Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field is ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap.
    id str
    The provider-assigned unique ID for this managed resource.
    kind str
    Type of the resource. Always compute#urlMaps for url maps.
    region str
    URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
    self_link str
    Server-defined URL for the resource.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    fingerprint String
    Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field is ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap.
    id String
    The provider-assigned unique ID for this managed resource.
    kind String
    Type of the resource. Always compute#urlMaps for url maps.
    region String
    URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
    selfLink String
    Server-defined URL for the resource.

    Supporting Types

    CorsPolicy, CorsPolicyArgs

    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders List<string>
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods List<string>
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes List<string>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins List<string>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders List<string>
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders []string
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods []string
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes []string
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins []string
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders []string
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Integer
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders string[]
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods string[]
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes string[]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins string[]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders string[]
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allow_credentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allow_headers Sequence[str]
    Specifies the content for the Access-Control-Allow-Headers header.
    allow_methods Sequence[str]
    Specifies the content for the Access-Control-Allow-Methods header.
    allow_origin_regexes Sequence[str]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allow_origins Sequence[str]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    expose_headers Sequence[str]
    Specifies the content for the Access-Control-Expose-Headers header.
    max_age int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.

    CorsPolicyResponse, CorsPolicyResponseArgs

    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders List<string>
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods List<string>
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes List<string>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins List<string>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders List<string>
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders []string
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods []string
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes []string
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins []string
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders []string
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Integer
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders string[]
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods string[]
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes string[]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins string[]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders string[]
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allow_credentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allow_headers Sequence[str]
    Specifies the content for the Access-Control-Allow-Headers header.
    allow_methods Sequence[str]
    Specifies the content for the Access-Control-Allow-Methods header.
    allow_origin_regexes Sequence[str]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allow_origins Sequence[str]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    expose_headers Sequence[str]
    Specifies the content for the Access-Control-Expose-Headers header.
    max_age int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.

    CustomErrorResponsePolicy, CustomErrorResponsePolicyArgs

    ErrorResponseRules List<Pulumi.GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyCustomErrorResponseRule>
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    ErrorService string
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    ErrorResponseRules []CustomErrorResponsePolicyCustomErrorResponseRule
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    ErrorService string
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    errorResponseRules List<CustomErrorResponsePolicyCustomErrorResponseRule>
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    errorService String
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    errorResponseRules CustomErrorResponsePolicyCustomErrorResponseRule[]
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    errorService string
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    error_response_rules Sequence[CustomErrorResponsePolicyCustomErrorResponseRule]
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    error_service str
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    errorResponseRules List<Property Map>
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    errorService String
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.

    CustomErrorResponsePolicyCustomErrorResponseRule, CustomErrorResponsePolicyCustomErrorResponseRuleArgs

    MatchResponseCodes List<string>
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    OverrideResponseCode int
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    Path string
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    MatchResponseCodes []string
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    OverrideResponseCode int
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    Path string
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    matchResponseCodes List<String>
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    overrideResponseCode Integer
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path String
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    matchResponseCodes string[]
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    overrideResponseCode number
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path string
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    match_response_codes Sequence[str]
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    override_response_code int
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path str
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    matchResponseCodes List<String>
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    overrideResponseCode Number
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path String
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters

    CustomErrorResponsePolicyCustomErrorResponseRuleResponse, CustomErrorResponsePolicyCustomErrorResponseRuleResponseArgs

    MatchResponseCodes List<string>
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    OverrideResponseCode int
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    Path string
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    MatchResponseCodes []string
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    OverrideResponseCode int
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    Path string
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    matchResponseCodes List<String>
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    overrideResponseCode Integer
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path String
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    matchResponseCodes string[]
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    overrideResponseCode number
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path string
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    match_response_codes Sequence[str]
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    override_response_code int
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path str
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters
    matchResponseCodes List<String>
    Valid values include: - A number between 400 and 599: For example 401 or 503, in which case the load balancer applies the policy if the error code exactly matches this value. - 5xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 500 to 599. - 4xx: Load Balancer will apply the policy if the backend service responds with any response code in the range of 400 to 499. Values must be unique within matchResponseCodes and across all errorResponseRules of CustomErrorResponsePolicy.
    overrideResponseCode Number
    The HTTP status code returned with the response containing the custom error content. If overrideResponseCode is not supplied, the same response code returned by the original backend bucket or backend service is returned to the client.
    path String
    The full path to a file within backendBucket . For example: /errors/defaultError.html path must start with a leading slash. path cannot have trailing slashes. If the file is not available in backendBucket or the load balancer cannot reach the BackendBucket, a simple Not Found Error is returned to the client. The value must be from 1 to 1024 characters

    CustomErrorResponsePolicyResponse, CustomErrorResponsePolicyResponseArgs

    ErrorResponseRules List<Pulumi.GoogleNative.Compute.Beta.Inputs.CustomErrorResponsePolicyCustomErrorResponseRuleResponse>
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    ErrorService string
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    ErrorResponseRules []CustomErrorResponsePolicyCustomErrorResponseRuleResponse
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    ErrorService string
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    errorResponseRules List<CustomErrorResponsePolicyCustomErrorResponseRuleResponse>
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    errorService String
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    errorResponseRules CustomErrorResponsePolicyCustomErrorResponseRuleResponse[]
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    errorService string
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    error_response_rules Sequence[CustomErrorResponsePolicyCustomErrorResponseRuleResponse]
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    error_service str
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.
    errorResponseRules List<Property Map>
    Specifies rules for returning error responses. In a given policy, if you specify rules for both a range of error codes as well as rules for specific error codes then rules with specific error codes have a higher priority. For example, assume that you configure a rule for 401 (Un-authorized) code, and another for all 4 series error codes (4XX). If the backend service returns a 401, then the rule for 401 will be applied. However if the backend service returns a 403, the rule for 4xx takes effect.
    errorService String
    The full or partial URL to the BackendBucket resource that contains the custom error content. Examples are: - https://www.googleapis.com/compute/v1/projects/project/global/backendBuckets/myBackendBucket - compute/v1/projects/project/global/backendBuckets/myBackendBucket - global/backendBuckets/myBackendBucket If errorService is not specified at lower levels like pathMatcher, pathRule and routeRule, an errorService specified at a higher level in the UrlMap will be used. If UrlMap.defaultCustomErrorResponsePolicy contains one or more errorResponseRules[], it must specify errorService. If load balancer cannot reach the backendBucket, a simple Not Found Error will be returned, with the original response code (or overrideResponseCode if configured). errorService is not supported for internal or regional HTTP/HTTPS load balancers.

    Duration, DurationArgs

    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Integer
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds str
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years

    DurationResponse, DurationResponseArgs

    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Integer
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds str
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years

    HostRule, HostRuleArgs

    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts List<string>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts []string
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    hosts string[]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    hosts Sequence[str]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    path_matcher str
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.

    HostRuleResponse, HostRuleResponseArgs

    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts List<string>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts []string
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    hosts string[]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    hosts Sequence[str]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    path_matcher str
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.

    HttpFaultAbort, HttpFaultAbortArgs

    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage float64
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Integer
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    http_status int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage float
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultAbortResponse, HttpFaultAbortResponseArgs

    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage float64
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Integer
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    http_status int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage float
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultDelay, HttpFaultDelayArgs

    FixedDelay Pulumi.GoogleNative.Compute.Beta.Inputs.Duration
    Specifies the value of the fixed delay interval.
    Percentage double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    FixedDelay Duration
    Specifies the value of the fixed delay interval.
    Percentage float64
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Duration
    Specifies the value of the fixed delay interval.
    percentage Double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Duration
    Specifies the value of the fixed delay interval.
    percentage number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixed_delay Duration
    Specifies the value of the fixed delay interval.
    percentage float
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Property Map
    Specifies the value of the fixed delay interval.
    percentage Number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultDelayResponse, HttpFaultDelayResponseArgs

    FixedDelay Pulumi.GoogleNative.Compute.Beta.Inputs.DurationResponse
    Specifies the value of the fixed delay interval.
    Percentage double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    FixedDelay DurationResponse
    Specifies the value of the fixed delay interval.
    Percentage float64
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay DurationResponse
    Specifies the value of the fixed delay interval.
    percentage Double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay DurationResponse
    Specifies the value of the fixed delay interval.
    percentage number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixed_delay DurationResponse
    Specifies the value of the fixed delay interval.
    percentage float
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Property Map
    Specifies the value of the fixed delay interval.
    percentage Number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultInjection, HttpFaultInjectionArgs

    Abort Pulumi.GoogleNative.Compute.Beta.Inputs.HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    Delay Pulumi.GoogleNative.Compute.Beta.Inputs.HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    Abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    Delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort Property Map
    The specification for how client requests are aborted as part of fault injection.
    delay Property Map
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.

    HttpFaultInjectionResponse, HttpFaultInjectionResponseArgs

    Abort Pulumi.GoogleNative.Compute.Beta.Inputs.HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    Delay Pulumi.GoogleNative.Compute.Beta.Inputs.HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    Abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    Delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort Property Map
    The specification for how client requests are aborted as part of fault injection.
    delay Property Map
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.

    HttpFilterConfig, HttpFilterConfigArgs

    Config string
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    ConfigTypeUrl string
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    FilterName string
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    Config string
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    ConfigTypeUrl string
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    FilterName string
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config String
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    configTypeUrl String
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filterName String
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config string
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    configTypeUrl string
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filterName string
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config str
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    config_type_url str
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filter_name str
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config String
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    configTypeUrl String
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filterName String
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm

    HttpFilterConfigResponse, HttpFilterConfigResponseArgs

    Config string
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    ConfigTypeUrl string
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    FilterName string
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    Config string
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    ConfigTypeUrl string
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    FilterName string
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config String
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    configTypeUrl String
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filterName String
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config string
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    configTypeUrl string
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filterName string
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config str
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    config_type_url str
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filter_name str
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm
    config String
    The configuration needed to enable the networkservices.HttpFilter resource. The configuration must be YAML formatted and only contain fields defined in the protobuf identified in configTypeUrl
    configTypeUrl String
    The fully qualified versioned proto3 type url of the protobuf that the filter expects for its contextual settings, for example: type.googleapis.com/google.protobuf.Struct
    filterName String
    Name of the networkservices.HttpFilter resource this configuration belongs to. This name must be known to the xDS client. Example: envoy.wasm

    HttpHeaderAction, HttpHeaderActionArgs

    RequestHeadersToAdd List<Pulumi.GoogleNative.Compute.Beta.Inputs.HttpHeaderOption>
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd List<Pulumi.GoogleNative.Compute.Beta.Inputs.HttpHeaderOption>
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    RequestHeadersToAdd []HttpHeaderOption
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove []string
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd []HttpHeaderOption
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove []string
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<HttpHeaderOption>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<HttpHeaderOption>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd HttpHeaderOption[]
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove string[]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd HttpHeaderOption[]
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove string[]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    request_headers_to_add Sequence[HttpHeaderOption]
    Headers to add to a matching request before forwarding the request to the backendService.
    request_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    response_headers_to_add Sequence[HttpHeaderOption]
    Headers to add the response before sending the response back to the client.
    response_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<Property Map>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<Property Map>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.

    HttpHeaderActionResponse, HttpHeaderActionResponseArgs

    RequestHeadersToAdd List<Pulumi.GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionResponse>
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd List<Pulumi.GoogleNative.Compute.Beta.Inputs.HttpHeaderOptionResponse>
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    RequestHeadersToAdd []HttpHeaderOptionResponse
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove []string
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd []HttpHeaderOptionResponse
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove []string
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<HttpHeaderOptionResponse>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<HttpHeaderOptionResponse>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd HttpHeaderOptionResponse[]
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove string[]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd HttpHeaderOptionResponse[]
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove string[]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    request_headers_to_add Sequence[HttpHeaderOptionResponse]
    Headers to add to a matching request before forwarding the request to the backendService.
    request_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    response_headers_to_add Sequence[HttpHeaderOptionResponse]
    Headers to add the response before sending the response back to the client.
    response_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<Property Map>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<Property Map>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.

    HttpHeaderMatch, HttpHeaderMatchArgs

    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Pulumi.GoogleNative.Compute.Beta.Inputs.Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exact_match str
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    header_name str
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invert_match bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefix_match str
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    present_match bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    range_match Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regex_match str
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffix_match str
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Property Map
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

    HttpHeaderMatchResponse, HttpHeaderMatchResponseArgs

    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Pulumi.GoogleNative.Compute.Beta.Inputs.Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exact_match str
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    header_name str
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invert_match bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefix_match str
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    present_match bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    range_match Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regex_match str
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffix_match str
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Property Map
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

    HttpHeaderOption, HttpHeaderOptionArgs

    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName string
    The name of the header.
    headerValue string
    The value of the header to add.
    replace boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    header_name str
    The name of the header.
    header_value str
    The value of the header to add.
    replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.

    HttpHeaderOptionResponse, HttpHeaderOptionResponseArgs

    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName string
    The name of the header.
    headerValue string
    The value of the header to add.
    replace boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    header_name str
    The name of the header.
    header_value str
    The value of the header to add.
    replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.

    HttpQueryParameterMatch, HttpQueryParameterMatchArgs

    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exact_match str
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name str
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    present_match bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regex_match str
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

    HttpQueryParameterMatchResponse, HttpQueryParameterMatchResponseArgs

    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exact_match str
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name str
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    present_match bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regex_match str
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

    HttpRedirectAction, HttpRedirectActionArgs

    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode Pulumi.GoogleNative.Compute.Beta.HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect String
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect Boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect String
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect String
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery Boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    host_redirect str
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    https_redirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    path_redirect str
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefix_redirect str
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirect_response_code HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    strip_query bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect String
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect Boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect String
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect String
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode "FOUND" | "MOVED_PERMANENTLY_DEFAULT" | "PERMANENT_REDIRECT" | "SEE_OTHER" | "TEMPORARY_REDIRECT"
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery Boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.

    HttpRedirectActionRedirectResponseCode, HttpRedirectActionRedirectResponseCodeArgs

    Found
    FOUNDHttp Status Code 302 - Found.
    MovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    TemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    HttpRedirectActionRedirectResponseCodeFound
    FOUNDHttp Status Code 302 - Found.
    HttpRedirectActionRedirectResponseCodeMovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    HttpRedirectActionRedirectResponseCodePermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    HttpRedirectActionRedirectResponseCodeSeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    HttpRedirectActionRedirectResponseCodeTemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    Found
    FOUNDHttp Status Code 302 - Found.
    MovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    TemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    Found
    FOUNDHttp Status Code 302 - Found.
    MovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    TemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    FOUND
    FOUNDHttp Status Code 302 - Found.
    MOVED_PERMANENTLY_DEFAULT
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PERMANENT_REDIRECT
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SEE_OTHER
    SEE_OTHERHttp Status Code 303 - See Other.
    TEMPORARY_REDIRECT
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    "FOUND"
    FOUNDHttp Status Code 302 - Found.
    "MOVED_PERMANENTLY_DEFAULT"
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    "PERMANENT_REDIRECT"
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    "SEE_OTHER"
    SEE_OTHERHttp Status Code 303 - See Other.
    "TEMPORARY_REDIRECT"
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.

    HttpRedirectActionResponse, HttpRedirectActionResponseArgs

    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode string
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode string
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect String
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect Boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect String
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect String
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode String
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery Boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode string
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.