1. Registry
  2. Packages
  3. AWS
  4. API Docs
  5. appmesh
  6. Route
Viewing docs for AWS v7.46.0
published on Thursday, Sep 10, 2026 by Pulumi
aws logo aws logo
Viewing docs for AWS v7.46.0
published on Thursday, Sep 10, 2026 by Pulumi

    Provides an AWS App Mesh route resource.

    Example Usage

    HTTP Routing

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const serviceb = new aws.appmesh.Route("serviceb", {
        spec: {
            httpRoute: {
                match: {
                    prefix: "/",
                },
                action: {
                    weightedTargets: [
                        {
                            virtualNode: serviceb1.name,
                            weight: 90,
                        },
                        {
                            virtualNode: serviceb2.name,
                            weight: 10,
                        },
                    ],
                },
            },
        },
        name: "serviceB-route",
        meshName: simple.id,
        virtualRouterName: servicebAwsAppmeshVirtualRouter.name,
    });
    
    import pulumi
    import pulumi_aws as aws
    
    serviceb = aws.appmesh.Route("serviceb",
        spec={
            "http_route": {
                "match": {
                    "prefix": "/",
                },
                "action": {
                    "weighted_targets": [
                        {
                            "virtual_node": serviceb1["name"],
                            "weight": 90,
                        },
                        {
                            "virtual_node": serviceb2["name"],
                            "weight": 10,
                        },
                    ],
                },
            },
        },
        name="serviceB-route",
        mesh_name=simple["id"],
        virtual_router_name=serviceb_aws_appmesh_virtual_router["name"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appmesh.NewRoute(ctx, "serviceb", &appmesh.RouteArgs{
    			Spec: &appmesh.RouteSpecArgs{
    				HttpRoute: &appmesh.RouteSpecHttpRouteArgs{
    					Match: &appmesh.RouteSpecHttpRouteMatchArgs{
    						Prefix: pulumi.String("/"),
    					},
    					Action: &appmesh.RouteSpecHttpRouteActionArgs{
    						WeightedTargets: appmesh.RouteSpecHttpRouteActionWeightedTargetArray{
    							&appmesh.RouteSpecHttpRouteActionWeightedTargetArgs{
    								VirtualNode: pulumi.Any(serviceb1.Name),
    								Weight:      pulumi.Int(90),
    							},
    							&appmesh.RouteSpecHttpRouteActionWeightedTargetArgs{
    								VirtualNode: pulumi.Any(serviceb2.Name),
    								Weight:      pulumi.Int(10),
    							},
    						},
    					},
    				},
    			},
    			Name:              pulumi.String("serviceB-route"),
    			MeshName:          pulumi.Any(simple.Id),
    			VirtualRouterName: pulumi.Any(servicebAwsAppmeshVirtualRouter.Name),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceb = new Aws.AppMesh.Route("serviceb", new()
        {
            Spec = new Aws.AppMesh.Inputs.RouteSpecArgs
            {
                HttpRoute = new Aws.AppMesh.Inputs.RouteSpecHttpRouteArgs
                {
                    Match = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchArgs
                    {
                        Prefix = "/",
                    },
                    Action = new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionArgs
                    {
                        WeightedTargets = new[]
                        {
                            new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionWeightedTargetArgs
                            {
                                VirtualNode = serviceb1.Name,
                                Weight = 90,
                            },
                            new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionWeightedTargetArgs
                            {
                                VirtualNode = serviceb2.Name,
                                Weight = 10,
                            },
                        },
                    },
                },
            },
            Name = "serviceB-route",
            MeshName = simple.Id,
            VirtualRouterName = servicebAwsAppmeshVirtualRouter.Name,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.appmesh.Route;
    import com.pulumi.aws.appmesh.RouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteMatchArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteActionArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteActionWeightedTargetArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var serviceb = new Route("serviceb", RouteArgs.builder()
                .spec(RouteSpecArgs.builder()
                    .httpRoute(RouteSpecHttpRouteArgs.builder()
                        .match(RouteSpecHttpRouteMatchArgs.builder()
                            .prefix("/")
                            .build())
                        .action(RouteSpecHttpRouteActionArgs.builder()
                            .weightedTargets(                        
                                RouteSpecHttpRouteActionWeightedTargetArgs.builder()
                                    .virtualNode(serviceb1.name())
                                    .weight(90)
                                    .build(),
                                RouteSpecHttpRouteActionWeightedTargetArgs.builder()
                                    .virtualNode(serviceb2.name())
                                    .weight(10)
                                    .build())
                            .build())
                        .build())
                    .build())
                .name("serviceB-route")
                .meshName(simple.id())
                .virtualRouterName(servicebAwsAppmeshVirtualRouter.name())
                .build());
    
        }
    }
    
    resources:
      serviceb:
        type: aws:appmesh:Route
        properties:
          spec:
            httpRoute:
              match:
                prefix: /
              action:
                weightedTargets:
                  - virtualNode: ${serviceb1.name}
                    weight: 90
                  - virtualNode: ${serviceb2.name}
                    weight: 10
          name: serviceB-route
          meshName: ${simple.id}
          virtualRouterName: ${servicebAwsAppmeshVirtualRouter.name}
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_appmesh_route" "serviceb" {
      spec = {
        http_route = {
          match = {
            prefix = "/"
          }
          action = {
            weighted_targets = [{
              "virtualNode" = serviceb1.name
              "weight"      = 90
              }, {
              "virtualNode" = serviceb2.name
              "weight"      = 10
            }]
          }
        }
      }
      name                = "serviceB-route"
      mesh_name           = simple.id
      virtual_router_name = servicebAwsAppmeshVirtualRouter.name
    }
    

    HTTP Header Routing

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const serviceb = new aws.appmesh.Route("serviceb", {
        spec: {
            httpRoute: {
                match: {
                    headers: [{
                        match: {
                            prefix: "123",
                        },
                        name: "clientRequestId",
                    }],
                    method: "POST",
                    prefix: "/",
                    scheme: "https",
                },
                action: {
                    weightedTargets: [{
                        virtualNode: servicebAwsAppmeshVirtualNode.name,
                        weight: 100,
                    }],
                },
            },
        },
        name: "serviceB-route",
        meshName: simple.id,
        virtualRouterName: servicebAwsAppmeshVirtualRouter.name,
    });
    
    import pulumi
    import pulumi_aws as aws
    
    serviceb = aws.appmesh.Route("serviceb",
        spec={
            "http_route": {
                "match": {
                    "headers": [{
                        "match": {
                            "prefix": "123",
                        },
                        "name": "clientRequestId",
                    }],
                    "method": "POST",
                    "prefix": "/",
                    "scheme": "https",
                },
                "action": {
                    "weighted_targets": [{
                        "virtual_node": serviceb_aws_appmesh_virtual_node["name"],
                        "weight": 100,
                    }],
                },
            },
        },
        name="serviceB-route",
        mesh_name=simple["id"],
        virtual_router_name=serviceb_aws_appmesh_virtual_router["name"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appmesh.NewRoute(ctx, "serviceb", &appmesh.RouteArgs{
    			Spec: &appmesh.RouteSpecArgs{
    				HttpRoute: &appmesh.RouteSpecHttpRouteArgs{
    					Match: &appmesh.RouteSpecHttpRouteMatchArgs{
    						Headers: appmesh.RouteSpecHttpRouteMatchHeaderArray{
    							&appmesh.RouteSpecHttpRouteMatchHeaderArgs{
    								Match: &appmesh.RouteSpecHttpRouteMatchHeaderMatchArgs{
    									Prefix: pulumi.String("123"),
    								},
    								Name: pulumi.String("clientRequestId"),
    							},
    						},
    						Method: pulumi.String("POST"),
    						Prefix: pulumi.String("/"),
    						Scheme: pulumi.String("https"),
    					},
    					Action: &appmesh.RouteSpecHttpRouteActionArgs{
    						WeightedTargets: appmesh.RouteSpecHttpRouteActionWeightedTargetArray{
    							&appmesh.RouteSpecHttpRouteActionWeightedTargetArgs{
    								VirtualNode: pulumi.Any(servicebAwsAppmeshVirtualNode.Name),
    								Weight:      pulumi.Int(100),
    							},
    						},
    					},
    				},
    			},
    			Name:              pulumi.String("serviceB-route"),
    			MeshName:          pulumi.Any(simple.Id),
    			VirtualRouterName: pulumi.Any(servicebAwsAppmeshVirtualRouter.Name),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceb = new Aws.AppMesh.Route("serviceb", new()
        {
            Spec = new Aws.AppMesh.Inputs.RouteSpecArgs
            {
                HttpRoute = new Aws.AppMesh.Inputs.RouteSpecHttpRouteArgs
                {
                    Match = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchArgs
                    {
                        Headers = new[]
                        {
                            new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchHeaderArgs
                            {
                                Match = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchHeaderMatchArgs
                                {
                                    Prefix = "123",
                                },
                                Name = "clientRequestId",
                            },
                        },
                        Method = "POST",
                        Prefix = "/",
                        Scheme = "https",
                    },
                    Action = new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionArgs
                    {
                        WeightedTargets = new[]
                        {
                            new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionWeightedTargetArgs
                            {
                                VirtualNode = servicebAwsAppmeshVirtualNode.Name,
                                Weight = 100,
                            },
                        },
                    },
                },
            },
            Name = "serviceB-route",
            MeshName = simple.Id,
            VirtualRouterName = servicebAwsAppmeshVirtualRouter.Name,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.appmesh.Route;
    import com.pulumi.aws.appmesh.RouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteMatchArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteMatchHeaderArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteMatchHeaderMatchArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteActionArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteActionWeightedTargetArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var serviceb = new Route("serviceb", RouteArgs.builder()
                .spec(RouteSpecArgs.builder()
                    .httpRoute(RouteSpecHttpRouteArgs.builder()
                        .match(RouteSpecHttpRouteMatchArgs.builder()
                            .headers(RouteSpecHttpRouteMatchHeaderArgs.builder()
                                .match(RouteSpecHttpRouteMatchHeaderMatchArgs.builder()
                                    .prefix("123")
                                    .build())
                                .name("clientRequestId")
                                .build())
                            .method("POST")
                            .prefix("/")
                            .scheme("https")
                            .build())
                        .action(RouteSpecHttpRouteActionArgs.builder()
                            .weightedTargets(RouteSpecHttpRouteActionWeightedTargetArgs.builder()
                                .virtualNode(servicebAwsAppmeshVirtualNode.name())
                                .weight(100)
                                .build())
                            .build())
                        .build())
                    .build())
                .name("serviceB-route")
                .meshName(simple.id())
                .virtualRouterName(servicebAwsAppmeshVirtualRouter.name())
                .build());
    
        }
    }
    
    resources:
      serviceb:
        type: aws:appmesh:Route
        properties:
          spec:
            httpRoute:
              match:
                headers:
                  - match:
                      prefix: '123'
                    name: clientRequestId
                method: POST
                prefix: /
                scheme: https
              action:
                weightedTargets:
                  - virtualNode: ${servicebAwsAppmeshVirtualNode.name}
                    weight: 100
          name: serviceB-route
          meshName: ${simple.id}
          virtualRouterName: ${servicebAwsAppmeshVirtualRouter.name}
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_appmesh_route" "serviceb" {
      spec = {
        http_route = {
          match = {
            headers = [{
              "match" = {
                "prefix" = "123"
              }
              "name" = "clientRequestId"
            }]
            method = "POST"
            prefix = "/"
            scheme = "https"
          }
          action = {
            weighted_targets = [{
              "virtualNode" = servicebAwsAppmeshVirtualNode.name
              "weight"      = 100
            }]
          }
        }
      }
      name                = "serviceB-route"
      mesh_name           = simple.id
      virtual_router_name = servicebAwsAppmeshVirtualRouter.name
    }
    

    Retry Policy

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const serviceb = new aws.appmesh.Route("serviceb", {
        spec: {
            httpRoute: {
                match: {
                    prefix: "/",
                },
                retryPolicy: {
                    perRetryTimeout: {
                        unit: "s",
                        value: 15,
                    },
                    httpRetryEvents: ["server-error"],
                    maxRetries: 1,
                },
                action: {
                    weightedTargets: [{
                        virtualNode: servicebAwsAppmeshVirtualNode.name,
                        weight: 100,
                    }],
                },
            },
        },
        name: "serviceB-route",
        meshName: simple.id,
        virtualRouterName: servicebAwsAppmeshVirtualRouter.name,
    });
    
    import pulumi
    import pulumi_aws as aws
    
    serviceb = aws.appmesh.Route("serviceb",
        spec={
            "http_route": {
                "match": {
                    "prefix": "/",
                },
                "retry_policy": {
                    "per_retry_timeout": {
                        "unit": "s",
                        "value": 15,
                    },
                    "http_retry_events": ["server-error"],
                    "max_retries": 1,
                },
                "action": {
                    "weighted_targets": [{
                        "virtual_node": serviceb_aws_appmesh_virtual_node["name"],
                        "weight": 100,
                    }],
                },
            },
        },
        name="serviceB-route",
        mesh_name=simple["id"],
        virtual_router_name=serviceb_aws_appmesh_virtual_router["name"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appmesh.NewRoute(ctx, "serviceb", &appmesh.RouteArgs{
    			Spec: &appmesh.RouteSpecArgs{
    				HttpRoute: &appmesh.RouteSpecHttpRouteArgs{
    					Match: &appmesh.RouteSpecHttpRouteMatchArgs{
    						Prefix: pulumi.String("/"),
    					},
    					RetryPolicy: &appmesh.RouteSpecHttpRouteRetryPolicyArgs{
    						PerRetryTimeout: &appmesh.RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs{
    							Unit:  pulumi.String("s"),
    							Value: pulumi.Int(15),
    						},
    						HttpRetryEvents: pulumi.StringArray{
    							pulumi.String("server-error"),
    						},
    						MaxRetries: pulumi.Int(1),
    					},
    					Action: &appmesh.RouteSpecHttpRouteActionArgs{
    						WeightedTargets: appmesh.RouteSpecHttpRouteActionWeightedTargetArray{
    							&appmesh.RouteSpecHttpRouteActionWeightedTargetArgs{
    								VirtualNode: pulumi.Any(servicebAwsAppmeshVirtualNode.Name),
    								Weight:      pulumi.Int(100),
    							},
    						},
    					},
    				},
    			},
    			Name:              pulumi.String("serviceB-route"),
    			MeshName:          pulumi.Any(simple.Id),
    			VirtualRouterName: pulumi.Any(servicebAwsAppmeshVirtualRouter.Name),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceb = new Aws.AppMesh.Route("serviceb", new()
        {
            Spec = new Aws.AppMesh.Inputs.RouteSpecArgs
            {
                HttpRoute = new Aws.AppMesh.Inputs.RouteSpecHttpRouteArgs
                {
                    Match = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchArgs
                    {
                        Prefix = "/",
                    },
                    RetryPolicy = new Aws.AppMesh.Inputs.RouteSpecHttpRouteRetryPolicyArgs
                    {
                        PerRetryTimeout = new Aws.AppMesh.Inputs.RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs
                        {
                            Unit = "s",
                            Value = 15,
                        },
                        HttpRetryEvents = new[]
                        {
                            "server-error",
                        },
                        MaxRetries = 1,
                    },
                    Action = new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionArgs
                    {
                        WeightedTargets = new[]
                        {
                            new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionWeightedTargetArgs
                            {
                                VirtualNode = servicebAwsAppmeshVirtualNode.Name,
                                Weight = 100,
                            },
                        },
                    },
                },
            },
            Name = "serviceB-route",
            MeshName = simple.Id,
            VirtualRouterName = servicebAwsAppmeshVirtualRouter.Name,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.appmesh.Route;
    import com.pulumi.aws.appmesh.RouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteMatchArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteRetryPolicyArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteActionArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecHttpRouteActionWeightedTargetArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var serviceb = new Route("serviceb", RouteArgs.builder()
                .spec(RouteSpecArgs.builder()
                    .httpRoute(RouteSpecHttpRouteArgs.builder()
                        .match(RouteSpecHttpRouteMatchArgs.builder()
                            .prefix("/")
                            .build())
                        .retryPolicy(RouteSpecHttpRouteRetryPolicyArgs.builder()
                            .perRetryTimeout(RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs.builder()
                                .unit("s")
                                .value(15)
                                .build())
                            .httpRetryEvents("server-error")
                            .maxRetries(1)
                            .build())
                        .action(RouteSpecHttpRouteActionArgs.builder()
                            .weightedTargets(RouteSpecHttpRouteActionWeightedTargetArgs.builder()
                                .virtualNode(servicebAwsAppmeshVirtualNode.name())
                                .weight(100)
                                .build())
                            .build())
                        .build())
                    .build())
                .name("serviceB-route")
                .meshName(simple.id())
                .virtualRouterName(servicebAwsAppmeshVirtualRouter.name())
                .build());
    
        }
    }
    
    resources:
      serviceb:
        type: aws:appmesh:Route
        properties:
          spec:
            httpRoute:
              match:
                prefix: /
              retryPolicy:
                perRetryTimeout:
                  unit: s
                  value: 15
                httpRetryEvents:
                  - server-error
                maxRetries: 1
              action:
                weightedTargets:
                  - virtualNode: ${servicebAwsAppmeshVirtualNode.name}
                    weight: 100
          name: serviceB-route
          meshName: ${simple.id}
          virtualRouterName: ${servicebAwsAppmeshVirtualRouter.name}
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_appmesh_route" "serviceb" {
      spec = {
        http_route = {
          match = {
            prefix = "/"
          }
          retry_policy = {
            per_retry_timeout = {
              unit  = "s"
              value = 15
            }
            http_retry_events = ["server-error"]
            max_retries       = 1
          }
          action = {
            weighted_targets = [{
              "virtualNode" = servicebAwsAppmeshVirtualNode.name
              "weight"      = 100
            }]
          }
        }
      }
      name                = "serviceB-route"
      mesh_name           = simple.id
      virtual_router_name = servicebAwsAppmeshVirtualRouter.name
    }
    

    TCP Routing

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const serviceb = new aws.appmesh.Route("serviceb", {
        spec: {
            tcpRoute: {
                action: {
                    weightedTargets: [{
                        virtualNode: serviceb1.name,
                        weight: 100,
                    }],
                },
            },
        },
        name: "serviceB-route",
        meshName: simple.id,
        virtualRouterName: servicebAwsAppmeshVirtualRouter.name,
    });
    
    import pulumi
    import pulumi_aws as aws
    
    serviceb = aws.appmesh.Route("serviceb",
        spec={
            "tcp_route": {
                "action": {
                    "weighted_targets": [{
                        "virtual_node": serviceb1["name"],
                        "weight": 100,
                    }],
                },
            },
        },
        name="serviceB-route",
        mesh_name=simple["id"],
        virtual_router_name=serviceb_aws_appmesh_virtual_router["name"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/appmesh"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := appmesh.NewRoute(ctx, "serviceb", &appmesh.RouteArgs{
    			Spec: &appmesh.RouteSpecArgs{
    				TcpRoute: &appmesh.RouteSpecTcpRouteArgs{
    					Action: &appmesh.RouteSpecTcpRouteActionArgs{
    						WeightedTargets: appmesh.RouteSpecTcpRouteActionWeightedTargetArray{
    							&appmesh.RouteSpecTcpRouteActionWeightedTargetArgs{
    								VirtualNode: pulumi.Any(serviceb1.Name),
    								Weight:      pulumi.Int(100),
    							},
    						},
    					},
    				},
    			},
    			Name:              pulumi.String("serviceB-route"),
    			MeshName:          pulumi.Any(simple.Id),
    			VirtualRouterName: pulumi.Any(servicebAwsAppmeshVirtualRouter.Name),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var serviceb = new Aws.AppMesh.Route("serviceb", new()
        {
            Spec = new Aws.AppMesh.Inputs.RouteSpecArgs
            {
                TcpRoute = new Aws.AppMesh.Inputs.RouteSpecTcpRouteArgs
                {
                    Action = new Aws.AppMesh.Inputs.RouteSpecTcpRouteActionArgs
                    {
                        WeightedTargets = new[]
                        {
                            new Aws.AppMesh.Inputs.RouteSpecTcpRouteActionWeightedTargetArgs
                            {
                                VirtualNode = serviceb1.Name,
                                Weight = 100,
                            },
                        },
                    },
                },
            },
            Name = "serviceB-route",
            MeshName = simple.Id,
            VirtualRouterName = servicebAwsAppmeshVirtualRouter.Name,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.appmesh.Route;
    import com.pulumi.aws.appmesh.RouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecTcpRouteArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecTcpRouteActionArgs;
    import com.pulumi.aws.appmesh.inputs.RouteSpecTcpRouteActionWeightedTargetArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var serviceb = new Route("serviceb", RouteArgs.builder()
                .spec(RouteSpecArgs.builder()
                    .tcpRoute(RouteSpecTcpRouteArgs.builder()
                        .action(RouteSpecTcpRouteActionArgs.builder()
                            .weightedTargets(RouteSpecTcpRouteActionWeightedTargetArgs.builder()
                                .virtualNode(serviceb1.name())
                                .weight(100)
                                .build())
                            .build())
                        .build())
                    .build())
                .name("serviceB-route")
                .meshName(simple.id())
                .virtualRouterName(servicebAwsAppmeshVirtualRouter.name())
                .build());
    
        }
    }
    
    resources:
      serviceb:
        type: aws:appmesh:Route
        properties:
          spec:
            tcpRoute:
              action:
                weightedTargets:
                  - virtualNode: ${serviceb1.name}
                    weight: 100
          name: serviceB-route
          meshName: ${simple.id}
          virtualRouterName: ${servicebAwsAppmeshVirtualRouter.name}
    
    pulumi {
      required_providers {
        aws = {
          source = "pulumi/aws"
        }
      }
    }
    
    resource "aws_appmesh_route" "serviceb" {
      spec = {
        tcp_route = {
          action = {
            weighted_targets = [{
              "virtualNode" = serviceb1.name
              "weight"      = 100
            }]
          }
        }
      }
      name                = "serviceB-route"
      mesh_name           = simple.id
      virtual_router_name = servicebAwsAppmeshVirtualRouter.name
    }
    

    Create Route Resource

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

    Constructor syntax

    new Route(name: string, args: RouteArgs, opts?: CustomResourceOptions);
    @overload
    def Route(resource_name: str,
              args: RouteArgs,
              opts: Optional[ResourceOptions] = None)
    
    @overload
    def Route(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              mesh_name: Optional[str] = None,
              spec: Optional[RouteSpecArgs] = None,
              virtual_router_name: Optional[str] = None,
              mesh_owner: Optional[str] = None,
              name: Optional[str] = None,
              region: Optional[str] = None,
              tags: Optional[Mapping[str, str]] = None)
    func NewRoute(ctx *Context, name string, args RouteArgs, opts ...ResourceOption) (*Route, error)
    public Route(string name, RouteArgs args, CustomResourceOptions? opts = null)
    public Route(String name, RouteArgs args)
    public Route(String name, RouteArgs args, CustomResourceOptions options)
    
    type: aws:appmesh:Route
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "aws_appmesh_route" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args RouteArgs
    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 RouteArgs
    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 RouteArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RouteArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RouteArgs
    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 awsRouteResource = new Aws.AppMesh.Route("awsRouteResource", new()
    {
        MeshName = "string",
        Spec = new Aws.AppMesh.Inputs.RouteSpecArgs
        {
            GrpcRoute = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteArgs
            {
                Action = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteActionArgs
                {
                    WeightedTargets = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecGrpcRouteActionWeightedTargetArgs
                        {
                            VirtualNode = "string",
                            Weight = 0,
                            Port = 0,
                        },
                    },
                },
                Match = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteMatchArgs
                {
                    Metadatas = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecGrpcRouteMatchMetadataArgs
                        {
                            Name = "string",
                            Invert = false,
                            Match = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteMatchMetadataMatchArgs
                            {
                                Exact = "string",
                                Prefix = "string",
                                Range = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteMatchMetadataMatchRangeArgs
                                {
                                    End = 0,
                                    Start = 0,
                                },
                                Regex = "string",
                                Suffix = "string",
                            },
                        },
                    },
                    MethodName = "string",
                    Port = 0,
                    Prefix = "string",
                    ServiceName = "string",
                },
                RetryPolicy = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteRetryPolicyArgs
                {
                    MaxRetries = 0,
                    PerRetryTimeout = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteRetryPolicyPerRetryTimeoutArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                    GrpcRetryEvents = new[]
                    {
                        "string",
                    },
                    HttpRetryEvents = new[]
                    {
                        "string",
                    },
                    TcpRetryEvents = new[]
                    {
                        "string",
                    },
                },
                Timeout = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteTimeoutArgs
                {
                    Idle = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteTimeoutIdleArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                    PerRequest = new Aws.AppMesh.Inputs.RouteSpecGrpcRouteTimeoutPerRequestArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                },
            },
            Http2Route = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteArgs
            {
                Action = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteActionArgs
                {
                    WeightedTargets = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecHttp2RouteActionWeightedTargetArgs
                        {
                            VirtualNode = "string",
                            Weight = 0,
                            Port = 0,
                        },
                    },
                },
                Match = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteMatchArgs
                {
                    Headers = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecHttp2RouteMatchHeaderArgs
                        {
                            Name = "string",
                            Invert = false,
                            Match = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteMatchHeaderMatchArgs
                            {
                                Exact = "string",
                                Prefix = "string",
                                Range = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteMatchHeaderMatchRangeArgs
                                {
                                    End = 0,
                                    Start = 0,
                                },
                                Regex = "string",
                                Suffix = "string",
                            },
                        },
                    },
                    Method = "string",
                    Path = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteMatchPathArgs
                    {
                        Exact = "string",
                        Regex = "string",
                    },
                    Port = 0,
                    Prefix = "string",
                    QueryParameters = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecHttp2RouteMatchQueryParameterArgs
                        {
                            Name = "string",
                            Match = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteMatchQueryParameterMatchArgs
                            {
                                Exact = "string",
                            },
                        },
                    },
                    Scheme = "string",
                },
                RetryPolicy = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteRetryPolicyArgs
                {
                    MaxRetries = 0,
                    PerRetryTimeout = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteRetryPolicyPerRetryTimeoutArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                    HttpRetryEvents = new[]
                    {
                        "string",
                    },
                    TcpRetryEvents = new[]
                    {
                        "string",
                    },
                },
                Timeout = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteTimeoutArgs
                {
                    Idle = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteTimeoutIdleArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                    PerRequest = new Aws.AppMesh.Inputs.RouteSpecHttp2RouteTimeoutPerRequestArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                },
            },
            HttpRoute = new Aws.AppMesh.Inputs.RouteSpecHttpRouteArgs
            {
                Action = new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionArgs
                {
                    WeightedTargets = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecHttpRouteActionWeightedTargetArgs
                        {
                            VirtualNode = "string",
                            Weight = 0,
                            Port = 0,
                        },
                    },
                },
                Match = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchArgs
                {
                    Headers = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchHeaderArgs
                        {
                            Name = "string",
                            Invert = false,
                            Match = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchHeaderMatchArgs
                            {
                                Exact = "string",
                                Prefix = "string",
                                Range = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchHeaderMatchRangeArgs
                                {
                                    End = 0,
                                    Start = 0,
                                },
                                Regex = "string",
                                Suffix = "string",
                            },
                        },
                    },
                    Method = "string",
                    Path = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchPathArgs
                    {
                        Exact = "string",
                        Regex = "string",
                    },
                    Port = 0,
                    Prefix = "string",
                    QueryParameters = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchQueryParameterArgs
                        {
                            Name = "string",
                            Match = new Aws.AppMesh.Inputs.RouteSpecHttpRouteMatchQueryParameterMatchArgs
                            {
                                Exact = "string",
                            },
                        },
                    },
                    Scheme = "string",
                },
                RetryPolicy = new Aws.AppMesh.Inputs.RouteSpecHttpRouteRetryPolicyArgs
                {
                    MaxRetries = 0,
                    PerRetryTimeout = new Aws.AppMesh.Inputs.RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                    HttpRetryEvents = new[]
                    {
                        "string",
                    },
                    TcpRetryEvents = new[]
                    {
                        "string",
                    },
                },
                Timeout = new Aws.AppMesh.Inputs.RouteSpecHttpRouteTimeoutArgs
                {
                    Idle = new Aws.AppMesh.Inputs.RouteSpecHttpRouteTimeoutIdleArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                    PerRequest = new Aws.AppMesh.Inputs.RouteSpecHttpRouteTimeoutPerRequestArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                },
            },
            Priority = 0,
            TcpRoute = new Aws.AppMesh.Inputs.RouteSpecTcpRouteArgs
            {
                Action = new Aws.AppMesh.Inputs.RouteSpecTcpRouteActionArgs
                {
                    WeightedTargets = new[]
                    {
                        new Aws.AppMesh.Inputs.RouteSpecTcpRouteActionWeightedTargetArgs
                        {
                            VirtualNode = "string",
                            Weight = 0,
                            Port = 0,
                        },
                    },
                },
                Match = new Aws.AppMesh.Inputs.RouteSpecTcpRouteMatchArgs
                {
                    Port = 0,
                },
                Timeout = new Aws.AppMesh.Inputs.RouteSpecTcpRouteTimeoutArgs
                {
                    Idle = new Aws.AppMesh.Inputs.RouteSpecTcpRouteTimeoutIdleArgs
                    {
                        Unit = "string",
                        Value = 0,
                    },
                },
            },
        },
        VirtualRouterName = "string",
        MeshOwner = "string",
        Name = "string",
        Region = "string",
        Tags = 
        {
            { "string", "string" },
        },
    });
    
    example, err := appmesh.NewRoute(ctx, "awsRouteResource", &appmesh.RouteArgs{
    	MeshName: pulumi.String("string"),
    	Spec: &appmesh.RouteSpecArgs{
    		GrpcRoute: &appmesh.RouteSpecGrpcRouteArgs{
    			Action: &appmesh.RouteSpecGrpcRouteActionArgs{
    				WeightedTargets: appmesh.RouteSpecGrpcRouteActionWeightedTargetArray{
    					&appmesh.RouteSpecGrpcRouteActionWeightedTargetArgs{
    						VirtualNode: pulumi.String("string"),
    						Weight:      pulumi.Int(0),
    						Port:        pulumi.Int(0),
    					},
    				},
    			},
    			Match: &appmesh.RouteSpecGrpcRouteMatchArgs{
    				Metadatas: appmesh.RouteSpecGrpcRouteMatchMetadataArray{
    					&appmesh.RouteSpecGrpcRouteMatchMetadataArgs{
    						Name:   pulumi.String("string"),
    						Invert: pulumi.Bool(false),
    						Match: &appmesh.RouteSpecGrpcRouteMatchMetadataMatchArgs{
    							Exact:  pulumi.String("string"),
    							Prefix: pulumi.String("string"),
    							Range: &appmesh.RouteSpecGrpcRouteMatchMetadataMatchRangeArgs{
    								End:   pulumi.Int(0),
    								Start: pulumi.Int(0),
    							},
    							Regex:  pulumi.String("string"),
    							Suffix: pulumi.String("string"),
    						},
    					},
    				},
    				MethodName:  pulumi.String("string"),
    				Port:        pulumi.Int(0),
    				Prefix:      pulumi.String("string"),
    				ServiceName: pulumi.String("string"),
    			},
    			RetryPolicy: &appmesh.RouteSpecGrpcRouteRetryPolicyArgs{
    				MaxRetries: pulumi.Int(0),
    				PerRetryTimeout: &appmesh.RouteSpecGrpcRouteRetryPolicyPerRetryTimeoutArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    				GrpcRetryEvents: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				HttpRetryEvents: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				TcpRetryEvents: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			Timeout: &appmesh.RouteSpecGrpcRouteTimeoutArgs{
    				Idle: &appmesh.RouteSpecGrpcRouteTimeoutIdleArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    				PerRequest: &appmesh.RouteSpecGrpcRouteTimeoutPerRequestArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    			},
    		},
    		Http2Route: &appmesh.RouteSpecHttp2RouteArgs{
    			Action: &appmesh.RouteSpecHttp2RouteActionArgs{
    				WeightedTargets: appmesh.RouteSpecHttp2RouteActionWeightedTargetArray{
    					&appmesh.RouteSpecHttp2RouteActionWeightedTargetArgs{
    						VirtualNode: pulumi.String("string"),
    						Weight:      pulumi.Int(0),
    						Port:        pulumi.Int(0),
    					},
    				},
    			},
    			Match: &appmesh.RouteSpecHttp2RouteMatchArgs{
    				Headers: appmesh.RouteSpecHttp2RouteMatchHeaderArray{
    					&appmesh.RouteSpecHttp2RouteMatchHeaderArgs{
    						Name:   pulumi.String("string"),
    						Invert: pulumi.Bool(false),
    						Match: &appmesh.RouteSpecHttp2RouteMatchHeaderMatchArgs{
    							Exact:  pulumi.String("string"),
    							Prefix: pulumi.String("string"),
    							Range: &appmesh.RouteSpecHttp2RouteMatchHeaderMatchRangeArgs{
    								End:   pulumi.Int(0),
    								Start: pulumi.Int(0),
    							},
    							Regex:  pulumi.String("string"),
    							Suffix: pulumi.String("string"),
    						},
    					},
    				},
    				Method: pulumi.String("string"),
    				Path: &appmesh.RouteSpecHttp2RouteMatchPathArgs{
    					Exact: pulumi.String("string"),
    					Regex: pulumi.String("string"),
    				},
    				Port:   pulumi.Int(0),
    				Prefix: pulumi.String("string"),
    				QueryParameters: appmesh.RouteSpecHttp2RouteMatchQueryParameterArray{
    					&appmesh.RouteSpecHttp2RouteMatchQueryParameterArgs{
    						Name: pulumi.String("string"),
    						Match: &appmesh.RouteSpecHttp2RouteMatchQueryParameterMatchArgs{
    							Exact: pulumi.String("string"),
    						},
    					},
    				},
    				Scheme: pulumi.String("string"),
    			},
    			RetryPolicy: &appmesh.RouteSpecHttp2RouteRetryPolicyArgs{
    				MaxRetries: pulumi.Int(0),
    				PerRetryTimeout: &appmesh.RouteSpecHttp2RouteRetryPolicyPerRetryTimeoutArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    				HttpRetryEvents: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				TcpRetryEvents: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			Timeout: &appmesh.RouteSpecHttp2RouteTimeoutArgs{
    				Idle: &appmesh.RouteSpecHttp2RouteTimeoutIdleArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    				PerRequest: &appmesh.RouteSpecHttp2RouteTimeoutPerRequestArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    			},
    		},
    		HttpRoute: &appmesh.RouteSpecHttpRouteArgs{
    			Action: &appmesh.RouteSpecHttpRouteActionArgs{
    				WeightedTargets: appmesh.RouteSpecHttpRouteActionWeightedTargetArray{
    					&appmesh.RouteSpecHttpRouteActionWeightedTargetArgs{
    						VirtualNode: pulumi.String("string"),
    						Weight:      pulumi.Int(0),
    						Port:        pulumi.Int(0),
    					},
    				},
    			},
    			Match: &appmesh.RouteSpecHttpRouteMatchArgs{
    				Headers: appmesh.RouteSpecHttpRouteMatchHeaderArray{
    					&appmesh.RouteSpecHttpRouteMatchHeaderArgs{
    						Name:   pulumi.String("string"),
    						Invert: pulumi.Bool(false),
    						Match: &appmesh.RouteSpecHttpRouteMatchHeaderMatchArgs{
    							Exact:  pulumi.String("string"),
    							Prefix: pulumi.String("string"),
    							Range: &appmesh.RouteSpecHttpRouteMatchHeaderMatchRangeArgs{
    								End:   pulumi.Int(0),
    								Start: pulumi.Int(0),
    							},
    							Regex:  pulumi.String("string"),
    							Suffix: pulumi.String("string"),
    						},
    					},
    				},
    				Method: pulumi.String("string"),
    				Path: &appmesh.RouteSpecHttpRouteMatchPathArgs{
    					Exact: pulumi.String("string"),
    					Regex: pulumi.String("string"),
    				},
    				Port:   pulumi.Int(0),
    				Prefix: pulumi.String("string"),
    				QueryParameters: appmesh.RouteSpecHttpRouteMatchQueryParameterArray{
    					&appmesh.RouteSpecHttpRouteMatchQueryParameterArgs{
    						Name: pulumi.String("string"),
    						Match: &appmesh.RouteSpecHttpRouteMatchQueryParameterMatchArgs{
    							Exact: pulumi.String("string"),
    						},
    					},
    				},
    				Scheme: pulumi.String("string"),
    			},
    			RetryPolicy: &appmesh.RouteSpecHttpRouteRetryPolicyArgs{
    				MaxRetries: pulumi.Int(0),
    				PerRetryTimeout: &appmesh.RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    				HttpRetryEvents: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				TcpRetryEvents: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			Timeout: &appmesh.RouteSpecHttpRouteTimeoutArgs{
    				Idle: &appmesh.RouteSpecHttpRouteTimeoutIdleArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    				PerRequest: &appmesh.RouteSpecHttpRouteTimeoutPerRequestArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    			},
    		},
    		Priority: pulumi.Int(0),
    		TcpRoute: &appmesh.RouteSpecTcpRouteArgs{
    			Action: &appmesh.RouteSpecTcpRouteActionArgs{
    				WeightedTargets: appmesh.RouteSpecTcpRouteActionWeightedTargetArray{
    					&appmesh.RouteSpecTcpRouteActionWeightedTargetArgs{
    						VirtualNode: pulumi.String("string"),
    						Weight:      pulumi.Int(0),
    						Port:        pulumi.Int(0),
    					},
    				},
    			},
    			Match: &appmesh.RouteSpecTcpRouteMatchArgs{
    				Port: pulumi.Int(0),
    			},
    			Timeout: &appmesh.RouteSpecTcpRouteTimeoutArgs{
    				Idle: &appmesh.RouteSpecTcpRouteTimeoutIdleArgs{
    					Unit:  pulumi.String("string"),
    					Value: pulumi.Int(0),
    				},
    			},
    		},
    	},
    	VirtualRouterName: pulumi.String("string"),
    	MeshOwner:         pulumi.String("string"),
    	Name:              pulumi.String("string"),
    	Region:            pulumi.String("string"),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    resource "aws_appmesh_route" "awsRouteResource" {
      lifecycle {
        create_before_destroy = true
      }
      mesh_name = "string"
      spec = {
        grpc_route = {
          action = {
            weighted_targets = [{
              virtual_node = "string"
              weight       = 0
              port         = 0
            }]
          }
          match = {
            metadatas = [{
              name   = "string"
              invert = false
              match = {
                exact  = "string"
                prefix = "string"
                range = {
                  end   = 0
                  start = 0
                }
                regex  = "string"
                suffix = "string"
              }
            }]
            method_name  = "string"
            port         = 0
            prefix       = "string"
            service_name = "string"
          }
          retry_policy = {
            max_retries = 0
            per_retry_timeout = {
              unit  = "string"
              value = 0
            }
            grpc_retry_events = ["string"]
            http_retry_events = ["string"]
            tcp_retry_events  = ["string"]
          }
          timeout = {
            idle = {
              unit  = "string"
              value = 0
            }
            per_request = {
              unit  = "string"
              value = 0
            }
          }
        }
        http2_route = {
          action = {
            weighted_targets = [{
              virtual_node = "string"
              weight       = 0
              port         = 0
            }]
          }
          match = {
            headers = [{
              name   = "string"
              invert = false
              match = {
                exact  = "string"
                prefix = "string"
                range = {
                  end   = 0
                  start = 0
                }
                regex  = "string"
                suffix = "string"
              }
            }]
            method = "string"
            path = {
              exact = "string"
              regex = "string"
            }
            port   = 0
            prefix = "string"
            query_parameters = [{
              name = "string"
              match = {
                exact = "string"
              }
            }]
            scheme = "string"
          }
          retry_policy = {
            max_retries = 0
            per_retry_timeout = {
              unit  = "string"
              value = 0
            }
            http_retry_events = ["string"]
            tcp_retry_events  = ["string"]
          }
          timeout = {
            idle = {
              unit  = "string"
              value = 0
            }
            per_request = {
              unit  = "string"
              value = 0
            }
          }
        }
        http_route = {
          action = {
            weighted_targets = [{
              virtual_node = "string"
              weight       = 0
              port         = 0
            }]
          }
          match = {
            headers = [{
              name   = "string"
              invert = false
              match = {
                exact  = "string"
                prefix = "string"
                range = {
                  end   = 0
                  start = 0
                }
                regex  = "string"
                suffix = "string"
              }
            }]
            method = "string"
            path = {
              exact = "string"
              regex = "string"
            }
            port   = 0
            prefix = "string"
            query_parameters = [{
              name = "string"
              match = {
                exact = "string"
              }
            }]
            scheme = "string"
          }
          retry_policy = {
            max_retries = 0
            per_retry_timeout = {
              unit  = "string"
              value = 0
            }
            http_retry_events = ["string"]
            tcp_retry_events  = ["string"]
          }
          timeout = {
            idle = {
              unit  = "string"
              value = 0
            }
            per_request = {
              unit  = "string"
              value = 0
            }
          }
        }
        priority = 0
        tcp_route = {
          action = {
            weighted_targets = [{
              virtual_node = "string"
              weight       = 0
              port         = 0
            }]
          }
          match = {
            port = 0
          }
          timeout = {
            idle = {
              unit  = "string"
              value = 0
            }
          }
        }
      }
      virtual_router_name = "string"
      mesh_owner          = "string"
      name                = "string"
      region              = "string"
      tags = {
        "string" = "string"
      }
    }
    
    var awsRouteResource = new com.pulumi.aws.appmesh.Route("awsRouteResource", com.pulumi.aws.appmesh.RouteArgs.builder()
        .meshName("string")
        .spec(RouteSpecArgs.builder()
            .grpcRoute(RouteSpecGrpcRouteArgs.builder()
                .action(RouteSpecGrpcRouteActionArgs.builder()
                    .weightedTargets(RouteSpecGrpcRouteActionWeightedTargetArgs.builder()
                        .virtualNode("string")
                        .weight(0)
                        .port(0)
                        .build())
                    .build())
                .match(RouteSpecGrpcRouteMatchArgs.builder()
                    .metadatas(RouteSpecGrpcRouteMatchMetadataArgs.builder()
                        .name("string")
                        .invert(false)
                        .match(RouteSpecGrpcRouteMatchMetadataMatchArgs.builder()
                            .exact("string")
                            .prefix("string")
                            .range(RouteSpecGrpcRouteMatchMetadataMatchRangeArgs.builder()
                                .end(0)
                                .start(0)
                                .build())
                            .regex("string")
                            .suffix("string")
                            .build())
                        .build())
                    .methodName("string")
                    .port(0)
                    .prefix("string")
                    .serviceName("string")
                    .build())
                .retryPolicy(RouteSpecGrpcRouteRetryPolicyArgs.builder()
                    .maxRetries(0)
                    .perRetryTimeout(RouteSpecGrpcRouteRetryPolicyPerRetryTimeoutArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .grpcRetryEvents("string")
                    .httpRetryEvents("string")
                    .tcpRetryEvents("string")
                    .build())
                .timeout(RouteSpecGrpcRouteTimeoutArgs.builder()
                    .idle(RouteSpecGrpcRouteTimeoutIdleArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .perRequest(RouteSpecGrpcRouteTimeoutPerRequestArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .build())
                .build())
            .http2Route(RouteSpecHttp2RouteArgs.builder()
                .action(RouteSpecHttp2RouteActionArgs.builder()
                    .weightedTargets(RouteSpecHttp2RouteActionWeightedTargetArgs.builder()
                        .virtualNode("string")
                        .weight(0)
                        .port(0)
                        .build())
                    .build())
                .match(RouteSpecHttp2RouteMatchArgs.builder()
                    .headers(RouteSpecHttp2RouteMatchHeaderArgs.builder()
                        .name("string")
                        .invert(false)
                        .match(RouteSpecHttp2RouteMatchHeaderMatchArgs.builder()
                            .exact("string")
                            .prefix("string")
                            .range(RouteSpecHttp2RouteMatchHeaderMatchRangeArgs.builder()
                                .end(0)
                                .start(0)
                                .build())
                            .regex("string")
                            .suffix("string")
                            .build())
                        .build())
                    .method("string")
                    .path(RouteSpecHttp2RouteMatchPathArgs.builder()
                        .exact("string")
                        .regex("string")
                        .build())
                    .port(0)
                    .prefix("string")
                    .queryParameters(RouteSpecHttp2RouteMatchQueryParameterArgs.builder()
                        .name("string")
                        .match(RouteSpecHttp2RouteMatchQueryParameterMatchArgs.builder()
                            .exact("string")
                            .build())
                        .build())
                    .scheme("string")
                    .build())
                .retryPolicy(RouteSpecHttp2RouteRetryPolicyArgs.builder()
                    .maxRetries(0)
                    .perRetryTimeout(RouteSpecHttp2RouteRetryPolicyPerRetryTimeoutArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .httpRetryEvents("string")
                    .tcpRetryEvents("string")
                    .build())
                .timeout(RouteSpecHttp2RouteTimeoutArgs.builder()
                    .idle(RouteSpecHttp2RouteTimeoutIdleArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .perRequest(RouteSpecHttp2RouteTimeoutPerRequestArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .build())
                .build())
            .httpRoute(RouteSpecHttpRouteArgs.builder()
                .action(RouteSpecHttpRouteActionArgs.builder()
                    .weightedTargets(RouteSpecHttpRouteActionWeightedTargetArgs.builder()
                        .virtualNode("string")
                        .weight(0)
                        .port(0)
                        .build())
                    .build())
                .match(RouteSpecHttpRouteMatchArgs.builder()
                    .headers(RouteSpecHttpRouteMatchHeaderArgs.builder()
                        .name("string")
                        .invert(false)
                        .match(RouteSpecHttpRouteMatchHeaderMatchArgs.builder()
                            .exact("string")
                            .prefix("string")
                            .range(RouteSpecHttpRouteMatchHeaderMatchRangeArgs.builder()
                                .end(0)
                                .start(0)
                                .build())
                            .regex("string")
                            .suffix("string")
                            .build())
                        .build())
                    .method("string")
                    .path(RouteSpecHttpRouteMatchPathArgs.builder()
                        .exact("string")
                        .regex("string")
                        .build())
                    .port(0)
                    .prefix("string")
                    .queryParameters(RouteSpecHttpRouteMatchQueryParameterArgs.builder()
                        .name("string")
                        .match(RouteSpecHttpRouteMatchQueryParameterMatchArgs.builder()
                            .exact("string")
                            .build())
                        .build())
                    .scheme("string")
                    .build())
                .retryPolicy(RouteSpecHttpRouteRetryPolicyArgs.builder()
                    .maxRetries(0)
                    .perRetryTimeout(RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .httpRetryEvents("string")
                    .tcpRetryEvents("string")
                    .build())
                .timeout(RouteSpecHttpRouteTimeoutArgs.builder()
                    .idle(RouteSpecHttpRouteTimeoutIdleArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .perRequest(RouteSpecHttpRouteTimeoutPerRequestArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .build())
                .build())
            .priority(0)
            .tcpRoute(RouteSpecTcpRouteArgs.builder()
                .action(RouteSpecTcpRouteActionArgs.builder()
                    .weightedTargets(RouteSpecTcpRouteActionWeightedTargetArgs.builder()
                        .virtualNode("string")
                        .weight(0)
                        .port(0)
                        .build())
                    .build())
                .match(RouteSpecTcpRouteMatchArgs.builder()
                    .port(0)
                    .build())
                .timeout(RouteSpecTcpRouteTimeoutArgs.builder()
                    .idle(RouteSpecTcpRouteTimeoutIdleArgs.builder()
                        .unit("string")
                        .value(0)
                        .build())
                    .build())
                .build())
            .build())
        .virtualRouterName("string")
        .meshOwner("string")
        .name("string")
        .region("string")
        .tags(Map.of("string", "string"))
        .build());
    
    aws_route_resource = aws.appmesh.Route("awsRouteResource",
        mesh_name="string",
        spec={
            "grpc_route": {
                "action": {
                    "weighted_targets": [{
                        "virtual_node": "string",
                        "weight": 0,
                        "port": 0,
                    }],
                },
                "match": {
                    "metadatas": [{
                        "name": "string",
                        "invert": False,
                        "match": {
                            "exact": "string",
                            "prefix": "string",
                            "range": {
                                "end": 0,
                                "start": 0,
                            },
                            "regex": "string",
                            "suffix": "string",
                        },
                    }],
                    "method_name": "string",
                    "port": 0,
                    "prefix": "string",
                    "service_name": "string",
                },
                "retry_policy": {
                    "max_retries": 0,
                    "per_retry_timeout": {
                        "unit": "string",
                        "value": 0,
                    },
                    "grpc_retry_events": ["string"],
                    "http_retry_events": ["string"],
                    "tcp_retry_events": ["string"],
                },
                "timeout": {
                    "idle": {
                        "unit": "string",
                        "value": 0,
                    },
                    "per_request": {
                        "unit": "string",
                        "value": 0,
                    },
                },
            },
            "http2_route": {
                "action": {
                    "weighted_targets": [{
                        "virtual_node": "string",
                        "weight": 0,
                        "port": 0,
                    }],
                },
                "match": {
                    "headers": [{
                        "name": "string",
                        "invert": False,
                        "match": {
                            "exact": "string",
                            "prefix": "string",
                            "range": {
                                "end": 0,
                                "start": 0,
                            },
                            "regex": "string",
                            "suffix": "string",
                        },
                    }],
                    "method": "string",
                    "path": {
                        "exact": "string",
                        "regex": "string",
                    },
                    "port": 0,
                    "prefix": "string",
                    "query_parameters": [{
                        "name": "string",
                        "match": {
                            "exact": "string",
                        },
                    }],
                    "scheme": "string",
                },
                "retry_policy": {
                    "max_retries": 0,
                    "per_retry_timeout": {
                        "unit": "string",
                        "value": 0,
                    },
                    "http_retry_events": ["string"],
                    "tcp_retry_events": ["string"],
                },
                "timeout": {
                    "idle": {
                        "unit": "string",
                        "value": 0,
                    },
                    "per_request": {
                        "unit": "string",
                        "value": 0,
                    },
                },
            },
            "http_route": {
                "action": {
                    "weighted_targets": [{
                        "virtual_node": "string",
                        "weight": 0,
                        "port": 0,
                    }],
                },
                "match": {
                    "headers": [{
                        "name": "string",
                        "invert": False,
                        "match": {
                            "exact": "string",
                            "prefix": "string",
                            "range": {
                                "end": 0,
                                "start": 0,
                            },
                            "regex": "string",
                            "suffix": "string",
                        },
                    }],
                    "method": "string",
                    "path": {
                        "exact": "string",
                        "regex": "string",
                    },
                    "port": 0,
                    "prefix": "string",
                    "query_parameters": [{
                        "name": "string",
                        "match": {
                            "exact": "string",
                        },
                    }],
                    "scheme": "string",
                },
                "retry_policy": {
                    "max_retries": 0,
                    "per_retry_timeout": {
                        "unit": "string",
                        "value": 0,
                    },
                    "http_retry_events": ["string"],
                    "tcp_retry_events": ["string"],
                },
                "timeout": {
                    "idle": {
                        "unit": "string",
                        "value": 0,
                    },
                    "per_request": {
                        "unit": "string",
                        "value": 0,
                    },
                },
            },
            "priority": 0,
            "tcp_route": {
                "action": {
                    "weighted_targets": [{
                        "virtual_node": "string",
                        "weight": 0,
                        "port": 0,
                    }],
                },
                "match": {
                    "port": 0,
                },
                "timeout": {
                    "idle": {
                        "unit": "string",
                        "value": 0,
                    },
                },
            },
        },
        virtual_router_name="string",
        mesh_owner="string",
        name="string",
        region="string",
        tags={
            "string": "string",
        })
    
    const awsRouteResource = new aws.appmesh.Route("awsRouteResource", {
        meshName: "string",
        spec: {
            grpcRoute: {
                action: {
                    weightedTargets: [{
                        virtualNode: "string",
                        weight: 0,
                        port: 0,
                    }],
                },
                match: {
                    metadatas: [{
                        name: "string",
                        invert: false,
                        match: {
                            exact: "string",
                            prefix: "string",
                            range: {
                                end: 0,
                                start: 0,
                            },
                            regex: "string",
                            suffix: "string",
                        },
                    }],
                    methodName: "string",
                    port: 0,
                    prefix: "string",
                    serviceName: "string",
                },
                retryPolicy: {
                    maxRetries: 0,
                    perRetryTimeout: {
                        unit: "string",
                        value: 0,
                    },
                    grpcRetryEvents: ["string"],
                    httpRetryEvents: ["string"],
                    tcpRetryEvents: ["string"],
                },
                timeout: {
                    idle: {
                        unit: "string",
                        value: 0,
                    },
                    perRequest: {
                        unit: "string",
                        value: 0,
                    },
                },
            },
            http2Route: {
                action: {
                    weightedTargets: [{
                        virtualNode: "string",
                        weight: 0,
                        port: 0,
                    }],
                },
                match: {
                    headers: [{
                        name: "string",
                        invert: false,
                        match: {
                            exact: "string",
                            prefix: "string",
                            range: {
                                end: 0,
                                start: 0,
                            },
                            regex: "string",
                            suffix: "string",
                        },
                    }],
                    method: "string",
                    path: {
                        exact: "string",
                        regex: "string",
                    },
                    port: 0,
                    prefix: "string",
                    queryParameters: [{
                        name: "string",
                        match: {
                            exact: "string",
                        },
                    }],
                    scheme: "string",
                },
                retryPolicy: {
                    maxRetries: 0,
                    perRetryTimeout: {
                        unit: "string",
                        value: 0,
                    },
                    httpRetryEvents: ["string"],
                    tcpRetryEvents: ["string"],
                },
                timeout: {
                    idle: {
                        unit: "string",
                        value: 0,
                    },
                    perRequest: {
                        unit: "string",
                        value: 0,
                    },
                },
            },
            httpRoute: {
                action: {
                    weightedTargets: [{
                        virtualNode: "string",
                        weight: 0,
                        port: 0,
                    }],
                },
                match: {
                    headers: [{
                        name: "string",
                        invert: false,
                        match: {
                            exact: "string",
                            prefix: "string",
                            range: {
                                end: 0,
                                start: 0,
                            },
                            regex: "string",
                            suffix: "string",
                        },
                    }],
                    method: "string",
                    path: {
                        exact: "string",
                        regex: "string",
                    },
                    port: 0,
                    prefix: "string",
                    queryParameters: [{
                        name: "string",
                        match: {
                            exact: "string",
                        },
                    }],
                    scheme: "string",
                },
                retryPolicy: {
                    maxRetries: 0,
                    perRetryTimeout: {
                        unit: "string",
                        value: 0,
                    },
                    httpRetryEvents: ["string"],
                    tcpRetryEvents: ["string"],
                },
                timeout: {
                    idle: {
                        unit: "string",
                        value: 0,
                    },
                    perRequest: {
                        unit: "string",
                        value: 0,
                    },
                },
            },
            priority: 0,
            tcpRoute: {
                action: {
                    weightedTargets: [{
                        virtualNode: "string",
                        weight: 0,
                        port: 0,
                    }],
                },
                match: {
                    port: 0,
                },
                timeout: {
                    idle: {
                        unit: "string",
                        value: 0,
                    },
                },
            },
        },
        virtualRouterName: "string",
        meshOwner: "string",
        name: "string",
        region: "string",
        tags: {
            string: "string",
        },
    });
    
    type: aws:appmesh:Route
    properties:
        meshName: string
        meshOwner: string
        name: string
        region: string
        spec:
            grpcRoute:
                action:
                    weightedTargets:
                        - port: 0
                          virtualNode: string
                          weight: 0
                match:
                    metadatas:
                        - invert: false
                          match:
                            exact: string
                            prefix: string
                            range:
                                end: 0
                                start: 0
                            regex: string
                            suffix: string
                          name: string
                    methodName: string
                    port: 0
                    prefix: string
                    serviceName: string
                retryPolicy:
                    grpcRetryEvents:
                        - string
                    httpRetryEvents:
                        - string
                    maxRetries: 0
                    perRetryTimeout:
                        unit: string
                        value: 0
                    tcpRetryEvents:
                        - string
                timeout:
                    idle:
                        unit: string
                        value: 0
                    perRequest:
                        unit: string
                        value: 0
            http2Route:
                action:
                    weightedTargets:
                        - port: 0
                          virtualNode: string
                          weight: 0
                match:
                    headers:
                        - invert: false
                          match:
                            exact: string
                            prefix: string
                            range:
                                end: 0
                                start: 0
                            regex: string
                            suffix: string
                          name: string
                    method: string
                    path:
                        exact: string
                        regex: string
                    port: 0
                    prefix: string
                    queryParameters:
                        - match:
                            exact: string
                          name: string
                    scheme: string
                retryPolicy:
                    httpRetryEvents:
                        - string
                    maxRetries: 0
                    perRetryTimeout:
                        unit: string
                        value: 0
                    tcpRetryEvents:
                        - string
                timeout:
                    idle:
                        unit: string
                        value: 0
                    perRequest:
                        unit: string
                        value: 0
            httpRoute:
                action:
                    weightedTargets:
                        - port: 0
                          virtualNode: string
                          weight: 0
                match:
                    headers:
                        - invert: false
                          match:
                            exact: string
                            prefix: string
                            range:
                                end: 0
                                start: 0
                            regex: string
                            suffix: string
                          name: string
                    method: string
                    path:
                        exact: string
                        regex: string
                    port: 0
                    prefix: string
                    queryParameters:
                        - match:
                            exact: string
                          name: string
                    scheme: string
                retryPolicy:
                    httpRetryEvents:
                        - string
                    maxRetries: 0
                    perRetryTimeout:
                        unit: string
                        value: 0
                    tcpRetryEvents:
                        - string
                timeout:
                    idle:
                        unit: string
                        value: 0
                    perRequest:
                        unit: string
                        value: 0
            priority: 0
            tcpRoute:
                action:
                    weightedTargets:
                        - port: 0
                          virtualNode: string
                          weight: 0
                match:
                    port: 0
                timeout:
                    idle:
                        unit: string
                        value: 0
        tags:
            string: string
        virtualRouterName: string
    

    Route Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Route resource accepts the following input properties:

    MeshName string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    Spec RouteSpec
    Route specification to apply. See spec Block for details.
    VirtualRouterName string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    Tags Dictionary<string, string>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    MeshName string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    Spec RouteSpecArgs
    Route specification to apply. See spec Block for details.
    VirtualRouterName string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    Tags map[string]string
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    mesh_name string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    spec object
    Route specification to apply. See spec Block for details.
    virtual_router_name string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    mesh_owner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags map(string)
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    meshName String
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    spec RouteSpec
    Route specification to apply. See spec Block for details.
    virtualRouterName String
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags Map<String,String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    meshName string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    spec RouteSpec
    Route specification to apply. See spec Block for details.
    virtualRouterName string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    meshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags {[key: string]: string}
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    mesh_name str
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    spec RouteSpecArgs
    Route specification to apply. See spec Block for details.
    virtual_router_name str
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    mesh_owner str
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name str
    Name to use for the route. Must be between 1 and 255 characters in length.
    region str
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags Mapping[str, str]
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    meshName String
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    spec Property Map
    Route specification to apply. See spec Block for details.
    virtualRouterName String
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    tags Map<String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    Outputs

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

    Arn string
    ARN of the route.
    CreatedDate string
    Creation date of the route.
    Id string
    The provider-assigned unique ID for this managed resource.
    LastUpdatedDate string
    Last update date of the route.
    ResourceOwner string
    Resource owner's AWS account ID.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    Arn string
    ARN of the route.
    CreatedDate string
    Creation date of the route.
    Id string
    The provider-assigned unique ID for this managed resource.
    LastUpdatedDate string
    Last update date of the route.
    ResourceOwner string
    Resource owner's AWS account ID.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn string
    ARN of the route.
    created_date string
    Creation date of the route.
    id string
    The provider-assigned unique ID for this managed resource.
    last_updated_date string
    Last update date of the route.
    resource_owner string
    Resource owner's AWS account ID.
    tags_all map(string)
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn String
    ARN of the route.
    createdDate String
    Creation date of the route.
    id String
    The provider-assigned unique ID for this managed resource.
    lastUpdatedDate String
    Last update date of the route.
    resourceOwner String
    Resource owner's AWS account ID.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn string
    ARN of the route.
    createdDate string
    Creation date of the route.
    id string
    The provider-assigned unique ID for this managed resource.
    lastUpdatedDate string
    Last update date of the route.
    resourceOwner string
    Resource owner's AWS account ID.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn str
    ARN of the route.
    created_date str
    Creation date of the route.
    id str
    The provider-assigned unique ID for this managed resource.
    last_updated_date str
    Last update date of the route.
    resource_owner str
    Resource owner's AWS account ID.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    arn String
    ARN of the route.
    createdDate String
    Creation date of the route.
    id String
    The provider-assigned unique ID for this managed resource.
    lastUpdatedDate String
    Last update date of the route.
    resourceOwner String
    Resource owner's AWS account ID.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.

    Look up Existing Route Resource

    Get an existing Route resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: RouteState, opts?: CustomResourceOptions): Route
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            arn: Optional[str] = None,
            created_date: Optional[str] = None,
            last_updated_date: Optional[str] = None,
            mesh_name: Optional[str] = None,
            mesh_owner: Optional[str] = None,
            name: Optional[str] = None,
            region: Optional[str] = None,
            resource_owner: Optional[str] = None,
            spec: Optional[RouteSpecArgs] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_all: Optional[Mapping[str, str]] = None,
            virtual_router_name: Optional[str] = None) -> Route
    func GetRoute(ctx *Context, name string, id IDInput, state *RouteState, opts ...ResourceOption) (*Route, error)
    public static Route Get(string name, Input<string> id, RouteState? state, CustomResourceOptions? opts = null)
    public static Route get(String name, Output<String> id, RouteState state, CustomResourceOptions options)
    resources:  _:    type: aws:appmesh:Route    get:      id: ${id}
    import {
      to = aws_appmesh_route.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Arn string
    ARN of the route.
    CreatedDate string
    Creation date of the route.
    LastUpdatedDate string
    Last update date of the route.
    MeshName string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ResourceOwner string
    Resource owner's AWS account ID.
    Spec RouteSpec
    Route specification to apply. See spec Block for details.
    Tags Dictionary<string, string>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    VirtualRouterName string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    Arn string
    ARN of the route.
    CreatedDate string
    Creation date of the route.
    LastUpdatedDate string
    Last update date of the route.
    MeshName string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    MeshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ResourceOwner string
    Resource owner's AWS account ID.
    Spec RouteSpecArgs
    Route specification to apply. See spec Block for details.
    Tags map[string]string
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    VirtualRouterName string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    arn string
    ARN of the route.
    created_date string
    Creation date of the route.
    last_updated_date string
    Last update date of the route.
    mesh_name string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    mesh_owner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resource_owner string
    Resource owner's AWS account ID.
    spec object
    Route specification to apply. See spec Block for details.
    tags map(string)
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all map(string)
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    virtual_router_name string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    arn String
    ARN of the route.
    createdDate String
    Creation date of the route.
    lastUpdatedDate String
    Last update date of the route.
    meshName String
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resourceOwner String
    Resource owner's AWS account ID.
    spec RouteSpec
    Route specification to apply. See spec Block for details.
    tags Map<String,String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    virtualRouterName String
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    arn string
    ARN of the route.
    createdDate string
    Creation date of the route.
    lastUpdatedDate string
    Last update date of the route.
    meshName string
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    meshOwner string
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resourceOwner string
    Resource owner's AWS account ID.
    spec RouteSpec
    Route specification to apply. See spec Block for details.
    tags {[key: string]: string}
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    virtualRouterName string
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    arn str
    ARN of the route.
    created_date str
    Creation date of the route.
    last_updated_date str
    Last update date of the route.
    mesh_name str
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    mesh_owner str
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name str
    Name to use for the route. Must be between 1 and 255 characters in length.
    region str
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resource_owner str
    Resource owner's AWS account ID.
    spec RouteSpecArgs
    Route specification to apply. See spec Block for details.
    tags Mapping[str, str]
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    virtual_router_name str
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.
    arn String
    ARN of the route.
    createdDate String
    Creation date of the route.
    lastUpdatedDate String
    Last update date of the route.
    meshName String
    Name of the service mesh in which to create the route. Must be between 1 and 255 characters in length.
    meshOwner String
    AWS account ID of the service mesh's owner. Defaults to the account ID the AWS provider is currently connected to.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    resourceOwner String
    Resource owner's AWS account ID.
    spec Property Map
    Route specification to apply. See spec Block for details.
    tags Map<String>
    Map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.
    virtualRouterName String
    Name of the virtual router in which to create the route. Must be between 1 and 255 characters in length.

    Supporting Types

    RouteSpec, RouteSpecArgs

    GrpcRoute RouteSpecGrpcRoute
    GRPC routing information for the route. See spec.grpc_route Block for details.
    Http2Route RouteSpecHttp2Route
    HTTP/2 routing information for the route. See spec.http2_route Block for details.
    HttpRoute RouteSpecHttpRoute
    HTTP routing information for the route. See spec.http_route Block for details.
    Priority int
    Priority for the route, between 0 and 1000. Routes are matched based on the specified value, where 0 is the highest priority.
    TcpRoute RouteSpecTcpRoute
    TCP routing information for the route. See spec.tcp_route Block for details.
    GrpcRoute RouteSpecGrpcRoute
    GRPC routing information for the route. See spec.grpc_route Block for details.
    Http2Route RouteSpecHttp2Route
    HTTP/2 routing information for the route. See spec.http2_route Block for details.
    HttpRoute RouteSpecHttpRoute
    HTTP routing information for the route. See spec.http_route Block for details.
    Priority int
    Priority for the route, between 0 and 1000. Routes are matched based on the specified value, where 0 is the highest priority.
    TcpRoute RouteSpecTcpRoute
    TCP routing information for the route. See spec.tcp_route Block for details.
    grpc_route object
    GRPC routing information for the route. See spec.grpc_route Block for details.
    http2_route object
    HTTP/2 routing information for the route. See spec.http2_route Block for details.
    http_route object
    HTTP routing information for the route. See spec.http_route Block for details.
    priority number
    Priority for the route, between 0 and 1000. Routes are matched based on the specified value, where 0 is the highest priority.
    tcp_route object
    TCP routing information for the route. See spec.tcp_route Block for details.
    grpcRoute RouteSpecGrpcRoute
    GRPC routing information for the route. See spec.grpc_route Block for details.
    http2Route RouteSpecHttp2Route
    HTTP/2 routing information for the route. See spec.http2_route Block for details.
    httpRoute RouteSpecHttpRoute
    HTTP routing information for the route. See spec.http_route Block for details.
    priority Integer
    Priority for the route, between 0 and 1000. Routes are matched based on the specified value, where 0 is the highest priority.
    tcpRoute RouteSpecTcpRoute
    TCP routing information for the route. See spec.tcp_route Block for details.
    grpcRoute RouteSpecGrpcRoute
    GRPC routing information for the route. See spec.grpc_route Block for details.
    http2Route RouteSpecHttp2Route
    HTTP/2 routing information for the route. See spec.http2_route Block for details.
    httpRoute RouteSpecHttpRoute
    HTTP routing information for the route. See spec.http_route Block for details.
    priority number
    Priority for the route, between 0 and 1000. Routes are matched based on the specified value, where 0 is the highest priority.
    tcpRoute RouteSpecTcpRoute
    TCP routing information for the route. See spec.tcp_route Block for details.
    grpc_route RouteSpecGrpcRoute
    GRPC routing information for the route. See spec.grpc_route Block for details.
    http2_route RouteSpecHttp2Route
    HTTP/2 routing information for the route. See spec.http2_route Block for details.
    http_route RouteSpecHttpRoute
    HTTP routing information for the route. See spec.http_route Block for details.
    priority int
    Priority for the route, between 0 and 1000. Routes are matched based on the specified value, where 0 is the highest priority.
    tcp_route RouteSpecTcpRoute
    TCP routing information for the route. See spec.tcp_route Block for details.
    grpcRoute Property Map
    GRPC routing information for the route. See spec.grpc_route Block for details.
    http2Route Property Map
    HTTP/2 routing information for the route. See spec.http2_route Block for details.
    httpRoute Property Map
    HTTP routing information for the route. See spec.http_route Block for details.
    priority Number
    Priority for the route, between 0 and 1000. Routes are matched based on the specified value, where 0 is the highest priority.
    tcpRoute Property Map
    TCP routing information for the route. See spec.tcp_route Block for details.

    RouteSpecGrpcRoute, RouteSpecGrpcRouteArgs

    Action RouteSpecGrpcRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecGrpcRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    RetryPolicy RouteSpecGrpcRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    Timeout RouteSpecGrpcRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    Action RouteSpecGrpcRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecGrpcRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    RetryPolicy RouteSpecGrpcRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    Timeout RouteSpecGrpcRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action object
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retry_policy object
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout object
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecGrpcRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecGrpcRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy RouteSpecGrpcRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecGrpcRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecGrpcRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecGrpcRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy RouteSpecGrpcRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecGrpcRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecGrpcRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecGrpcRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retry_policy RouteSpecGrpcRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecGrpcRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action Property Map
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy Property Map
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout Property Map
    Types of timeouts. See spec.tcp_route.timeout Block for details.

    RouteSpecGrpcRouteAction, RouteSpecGrpcRouteActionArgs

    WeightedTargets List<RouteSpecGrpcRouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    WeightedTargets []RouteSpecGrpcRouteActionWeightedTarget
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets list(object)
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<RouteSpecGrpcRouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets RouteSpecGrpcRouteActionWeightedTarget[]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets Sequence[RouteSpecGrpcRouteActionWeightedTarget]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<Property Map>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.

    RouteSpecGrpcRouteActionWeightedTarget, RouteSpecGrpcRouteActionWeightedTargetArgs

    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    virtual_node string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Integer
    Relative weight of the weighted target. An integer between 0 and 100.
    port Integer
    Port number to match from the request.
    virtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtual_node str
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    port int
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Number
    Relative weight of the weighted target. An integer between 0 and 100.
    port Number
    Port number to match from the request.

    RouteSpecGrpcRouteMatch, RouteSpecGrpcRouteMatchArgs

    Metadatas List<RouteSpecGrpcRouteMatchMetadata>
    Data to match from the gRPC request. See spec.grpc_route.match.metadata Block for details.
    MethodName string
    Method name to match from the request. If you specify a name, you must also specify a serviceName.
    Port int
    Port number to match from the request.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    ServiceName string
    Fully qualified domain name for the service to match from the request.
    Metadatas []RouteSpecGrpcRouteMatchMetadata
    Data to match from the gRPC request. See spec.grpc_route.match.metadata Block for details.
    MethodName string
    Method name to match from the request. If you specify a name, you must also specify a serviceName.
    Port int
    Port number to match from the request.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    ServiceName string
    Fully qualified domain name for the service to match from the request.
    metadatas list(object)
    Data to match from the gRPC request. See spec.grpc_route.match.metadata Block for details.
    method_name string
    Method name to match from the request. If you specify a name, you must also specify a serviceName.
    port number
    Port number to match from the request.
    prefix string
    Header value sent by the client must begin with the specified characters.
    service_name string
    Fully qualified domain name for the service to match from the request.
    metadatas List<RouteSpecGrpcRouteMatchMetadata>
    Data to match from the gRPC request. See spec.grpc_route.match.metadata Block for details.
    methodName String
    Method name to match from the request. If you specify a name, you must also specify a serviceName.
    port Integer
    Port number to match from the request.
    prefix String
    Header value sent by the client must begin with the specified characters.
    serviceName String
    Fully qualified domain name for the service to match from the request.
    metadatas RouteSpecGrpcRouteMatchMetadata[]
    Data to match from the gRPC request. See spec.grpc_route.match.metadata Block for details.
    methodName string
    Method name to match from the request. If you specify a name, you must also specify a serviceName.
    port number
    Port number to match from the request.
    prefix string
    Header value sent by the client must begin with the specified characters.
    serviceName string
    Fully qualified domain name for the service to match from the request.
    metadatas Sequence[RouteSpecGrpcRouteMatchMetadata]
    Data to match from the gRPC request. See spec.grpc_route.match.metadata Block for details.
    method_name str
    Method name to match from the request. If you specify a name, you must also specify a serviceName.
    port int
    Port number to match from the request.
    prefix str
    Header value sent by the client must begin with the specified characters.
    service_name str
    Fully qualified domain name for the service to match from the request.
    metadatas List<Property Map>
    Data to match from the gRPC request. See spec.grpc_route.match.metadata Block for details.
    methodName String
    Method name to match from the request. If you specify a name, you must also specify a serviceName.
    port Number
    Port number to match from the request.
    prefix String
    Header value sent by the client must begin with the specified characters.
    serviceName String
    Fully qualified domain name for the service to match from the request.

    RouteSpecGrpcRouteMatchMetadata, RouteSpecGrpcRouteMatchMetadataArgs

    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    Match RouteSpecGrpcRouteMatchMetadataMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    Match RouteSpecGrpcRouteMatchMetadataMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert Boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecGrpcRouteMatchMetadataMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecGrpcRouteMatchMetadataMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name str
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecGrpcRouteMatchMetadataMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert Boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.

    RouteSpecGrpcRouteMatchMetadataMatch, RouteSpecGrpcRouteMatchMetadataMatchArgs

    Exact string
    Exact query parameter to match on.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    Range RouteSpecGrpcRouteMatchMetadataMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    Regex string
    Regex used to match the path.
    Suffix string
    Header value sent by the client must end with the specified characters.
    Exact string
    Exact query parameter to match on.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    Range RouteSpecGrpcRouteMatchMetadataMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    Regex string
    Regex used to match the path.
    Suffix string
    Header value sent by the client must end with the specified characters.
    exact string
    Exact query parameter to match on.
    prefix string
    Header value sent by the client must begin with the specified characters.
    range object
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex string
    Regex used to match the path.
    suffix string
    Header value sent by the client must end with the specified characters.
    exact String
    Exact query parameter to match on.
    prefix String
    Header value sent by the client must begin with the specified characters.
    range RouteSpecGrpcRouteMatchMetadataMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex String
    Regex used to match the path.
    suffix String
    Header value sent by the client must end with the specified characters.
    exact string
    Exact query parameter to match on.
    prefix string
    Header value sent by the client must begin with the specified characters.
    range RouteSpecGrpcRouteMatchMetadataMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex string
    Regex used to match the path.
    suffix string
    Header value sent by the client must end with the specified characters.
    exact str
    Exact query parameter to match on.
    prefix str
    Header value sent by the client must begin with the specified characters.
    range RouteSpecGrpcRouteMatchMetadataMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex str
    Regex used to match the path.
    suffix str
    Header value sent by the client must end with the specified characters.
    exact String
    Exact query parameter to match on.
    prefix String
    Header value sent by the client must begin with the specified characters.
    range Property Map
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex String
    Regex used to match the path.
    suffix String
    Header value sent by the client must end with the specified characters.

    RouteSpecGrpcRouteMatchMetadataMatchRange, RouteSpecGrpcRouteMatchMetadataMatchRangeArgs

    End int
    End of the range.
    Start int
    Start of the range.
    End int
    End of the range.
    Start int
    Start of the range.
    end number
    End of the range.
    start number
    Start of the range.
    end Integer
    End of the range.
    start Integer
    Start of the range.
    end number
    End of the range.
    start number
    Start of the range.
    end int
    End of the range.
    start int
    Start of the range.
    end Number
    End of the range.
    start Number
    Start of the range.

    RouteSpecGrpcRouteRetryPolicy, RouteSpecGrpcRouteRetryPolicyArgs

    MaxRetries int
    Maximum number of retries.
    PerRetryTimeout RouteSpecGrpcRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    GrpcRetryEvents List<string>
    List of gRPC retry events. Valid values: cancelled, deadline-exceeded, internal, resource-exhausted, unavailable.
    HttpRetryEvents List<string>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    TcpRetryEvents List<string>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    MaxRetries int
    Maximum number of retries.
    PerRetryTimeout RouteSpecGrpcRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    GrpcRetryEvents []string
    List of gRPC retry events. Valid values: cancelled, deadline-exceeded, internal, resource-exhausted, unavailable.
    HttpRetryEvents []string
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    TcpRetryEvents []string
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    max_retries number
    Maximum number of retries.
    per_retry_timeout object
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    grpc_retry_events list(string)
    List of gRPC retry events. Valid values: cancelled, deadline-exceeded, internal, resource-exhausted, unavailable.
    http_retry_events list(string)
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcp_retry_events list(string)
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries Integer
    Maximum number of retries.
    perRetryTimeout RouteSpecGrpcRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    grpcRetryEvents List<String>
    List of gRPC retry events. Valid values: cancelled, deadline-exceeded, internal, resource-exhausted, unavailable.
    httpRetryEvents List<String>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents List<String>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries number
    Maximum number of retries.
    perRetryTimeout RouteSpecGrpcRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    grpcRetryEvents string[]
    List of gRPC retry events. Valid values: cancelled, deadline-exceeded, internal, resource-exhausted, unavailable.
    httpRetryEvents string[]
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents string[]
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    max_retries int
    Maximum number of retries.
    per_retry_timeout RouteSpecGrpcRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    grpc_retry_events Sequence[str]
    List of gRPC retry events. Valid values: cancelled, deadline-exceeded, internal, resource-exhausted, unavailable.
    http_retry_events Sequence[str]
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcp_retry_events Sequence[str]
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries Number
    Maximum number of retries.
    perRetryTimeout Property Map
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    grpcRetryEvents List<String>
    List of gRPC retry events. Valid values: cancelled, deadline-exceeded, internal, resource-exhausted, unavailable.
    httpRetryEvents List<String>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents List<String>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.

    RouteSpecGrpcRouteRetryPolicyPerRetryTimeout, RouteSpecGrpcRouteRetryPolicyPerRetryTimeoutArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecGrpcRouteTimeout, RouteSpecGrpcRouteTimeoutArgs

    Idle RouteSpecGrpcRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    PerRequest RouteSpecGrpcRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    Idle RouteSpecGrpcRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    PerRequest RouteSpecGrpcRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    per_request object
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecGrpcRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest RouteSpecGrpcRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecGrpcRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest RouteSpecGrpcRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecGrpcRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    per_request RouteSpecGrpcRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest Property Map
    Per request timeout. See spec.http_route.timeout.per_request Block for details.

    RouteSpecGrpcRouteTimeoutIdle, RouteSpecGrpcRouteTimeoutIdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecGrpcRouteTimeoutPerRequest, RouteSpecGrpcRouteTimeoutPerRequestArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecHttp2Route, RouteSpecHttp2RouteArgs

    Action RouteSpecHttp2RouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecHttp2RouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    RetryPolicy RouteSpecHttp2RouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    Timeout RouteSpecHttp2RouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    Action RouteSpecHttp2RouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecHttp2RouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    RetryPolicy RouteSpecHttp2RouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    Timeout RouteSpecHttp2RouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action object
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retry_policy object
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout object
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecHttp2RouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecHttp2RouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy RouteSpecHttp2RouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecHttp2RouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecHttp2RouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecHttp2RouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy RouteSpecHttp2RouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecHttp2RouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecHttp2RouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecHttp2RouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retry_policy RouteSpecHttp2RouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecHttp2RouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action Property Map
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy Property Map
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout Property Map
    Types of timeouts. See spec.tcp_route.timeout Block for details.

    RouteSpecHttp2RouteAction, RouteSpecHttp2RouteActionArgs

    WeightedTargets List<RouteSpecHttp2RouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    WeightedTargets []RouteSpecHttp2RouteActionWeightedTarget
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets list(object)
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<RouteSpecHttp2RouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets RouteSpecHttp2RouteActionWeightedTarget[]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets Sequence[RouteSpecHttp2RouteActionWeightedTarget]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<Property Map>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.

    RouteSpecHttp2RouteActionWeightedTarget, RouteSpecHttp2RouteActionWeightedTargetArgs

    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    virtual_node string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Integer
    Relative weight of the weighted target. An integer between 0 and 100.
    port Integer
    Port number to match from the request.
    virtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtual_node str
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    port int
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Number
    Relative weight of the weighted target. An integer between 0 and 100.
    port Number
    Port number to match from the request.

    RouteSpecHttp2RouteMatch, RouteSpecHttp2RouteMatchArgs

    Headers List<RouteSpecHttp2RouteMatchHeader>
    Client request headers to match on. See spec.http_route.match.header Block for details.
    Method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    Path RouteSpecHttp2RouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    Port int
    Port number to match from the request.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    QueryParameters List<RouteSpecHttp2RouteMatchQueryParameter>
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    Scheme string
    Client request header scheme to match on. Valid values: http, https.
    Headers []RouteSpecHttp2RouteMatchHeader
    Client request headers to match on. See spec.http_route.match.header Block for details.
    Method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    Path RouteSpecHttp2RouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    Port int
    Port number to match from the request.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    QueryParameters []RouteSpecHttp2RouteMatchQueryParameter
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    Scheme string
    Client request header scheme to match on. Valid values: http, https.
    headers list(object)
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path object
    Client request path to match on. See spec.http_route.match.path Block for details.
    port number
    Port number to match from the request.
    prefix string
    Header value sent by the client must begin with the specified characters.
    query_parameters list(object)
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme string
    Client request header scheme to match on. Valid values: http, https.
    headers List<RouteSpecHttp2RouteMatchHeader>
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method String
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path RouteSpecHttp2RouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    port Integer
    Port number to match from the request.
    prefix String
    Header value sent by the client must begin with the specified characters.
    queryParameters List<RouteSpecHttp2RouteMatchQueryParameter>
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme String
    Client request header scheme to match on. Valid values: http, https.
    headers RouteSpecHttp2RouteMatchHeader[]
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path RouteSpecHttp2RouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    port number
    Port number to match from the request.
    prefix string
    Header value sent by the client must begin with the specified characters.
    queryParameters RouteSpecHttp2RouteMatchQueryParameter[]
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme string
    Client request header scheme to match on. Valid values: http, https.
    headers Sequence[RouteSpecHttp2RouteMatchHeader]
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method str
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path RouteSpecHttp2RouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    port int
    Port number to match from the request.
    prefix str
    Header value sent by the client must begin with the specified characters.
    query_parameters Sequence[RouteSpecHttp2RouteMatchQueryParameter]
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme str
    Client request header scheme to match on. Valid values: http, https.
    headers List<Property Map>
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method String
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path Property Map
    Client request path to match on. See spec.http_route.match.path Block for details.
    port Number
    Port number to match from the request.
    prefix String
    Header value sent by the client must begin with the specified characters.
    queryParameters List<Property Map>
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme String
    Client request header scheme to match on. Valid values: http, https.

    RouteSpecHttp2RouteMatchHeader, RouteSpecHttp2RouteMatchHeaderArgs

    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    Match RouteSpecHttp2RouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    Match RouteSpecHttp2RouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert Boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecHttp2RouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecHttp2RouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name str
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecHttp2RouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert Boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.

    RouteSpecHttp2RouteMatchHeaderMatch, RouteSpecHttp2RouteMatchHeaderMatchArgs

    Exact string
    Exact query parameter to match on.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    Range RouteSpecHttp2RouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    Regex string
    Regex used to match the path.
    Suffix string
    Header value sent by the client must end with the specified characters.
    Exact string
    Exact query parameter to match on.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    Range RouteSpecHttp2RouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    Regex string
    Regex used to match the path.
    Suffix string
    Header value sent by the client must end with the specified characters.
    exact string
    Exact query parameter to match on.
    prefix string
    Header value sent by the client must begin with the specified characters.
    range object
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex string
    Regex used to match the path.
    suffix string
    Header value sent by the client must end with the specified characters.
    exact String
    Exact query parameter to match on.
    prefix String
    Header value sent by the client must begin with the specified characters.
    range RouteSpecHttp2RouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex String
    Regex used to match the path.
    suffix String
    Header value sent by the client must end with the specified characters.
    exact string
    Exact query parameter to match on.
    prefix string
    Header value sent by the client must begin with the specified characters.
    range RouteSpecHttp2RouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex string
    Regex used to match the path.
    suffix string
    Header value sent by the client must end with the specified characters.
    exact str
    Exact query parameter to match on.
    prefix str
    Header value sent by the client must begin with the specified characters.
    range RouteSpecHttp2RouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex str
    Regex used to match the path.
    suffix str
    Header value sent by the client must end with the specified characters.
    exact String
    Exact query parameter to match on.
    prefix String
    Header value sent by the client must begin with the specified characters.
    range Property Map
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex String
    Regex used to match the path.
    suffix String
    Header value sent by the client must end with the specified characters.

    RouteSpecHttp2RouteMatchHeaderMatchRange, RouteSpecHttp2RouteMatchHeaderMatchRangeArgs

    End int
    End of the range.
    Start int
    Start of the range.
    End int
    End of the range.
    Start int
    Start of the range.
    end number
    End of the range.
    start number
    Start of the range.
    end Integer
    End of the range.
    start Integer
    Start of the range.
    end number
    End of the range.
    start number
    Start of the range.
    end int
    End of the range.
    start int
    Start of the range.
    end Number
    End of the range.
    start Number
    Start of the range.

    RouteSpecHttp2RouteMatchPath, RouteSpecHttp2RouteMatchPathArgs

    Exact string
    Exact query parameter to match on.
    Regex string
    Regex used to match the path.
    Exact string
    Exact query parameter to match on.
    Regex string
    Regex used to match the path.
    exact string
    Exact query parameter to match on.
    regex string
    Regex used to match the path.
    exact String
    Exact query parameter to match on.
    regex String
    Regex used to match the path.
    exact string
    Exact query parameter to match on.
    regex string
    Regex used to match the path.
    exact str
    Exact query parameter to match on.
    regex str
    Regex used to match the path.
    exact String
    Exact query parameter to match on.
    regex String
    Regex used to match the path.

    RouteSpecHttp2RouteMatchQueryParameter, RouteSpecHttp2RouteMatchQueryParameterArgs

    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Match RouteSpecHttp2RouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Match RouteSpecHttp2RouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    match RouteSpecHttp2RouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    match RouteSpecHttp2RouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name str
    Name to use for the route. Must be between 1 and 255 characters in length.
    match RouteSpecHttp2RouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.

    RouteSpecHttp2RouteMatchQueryParameterMatch, RouteSpecHttp2RouteMatchQueryParameterMatchArgs

    Exact string
    Exact query parameter to match on.
    Exact string
    Exact query parameter to match on.
    exact string
    Exact query parameter to match on.
    exact String
    Exact query parameter to match on.
    exact string
    Exact query parameter to match on.
    exact str
    Exact query parameter to match on.
    exact String
    Exact query parameter to match on.

    RouteSpecHttp2RouteRetryPolicy, RouteSpecHttp2RouteRetryPolicyArgs

    MaxRetries int
    Maximum number of retries.
    PerRetryTimeout RouteSpecHttp2RouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    HttpRetryEvents List<string>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    TcpRetryEvents List<string>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    MaxRetries int
    Maximum number of retries.
    PerRetryTimeout RouteSpecHttp2RouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    HttpRetryEvents []string
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    TcpRetryEvents []string
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    max_retries number
    Maximum number of retries.
    per_retry_timeout object
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    http_retry_events list(string)
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcp_retry_events list(string)
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries Integer
    Maximum number of retries.
    perRetryTimeout RouteSpecHttp2RouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    httpRetryEvents List<String>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents List<String>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries number
    Maximum number of retries.
    perRetryTimeout RouteSpecHttp2RouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    httpRetryEvents string[]
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents string[]
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    max_retries int
    Maximum number of retries.
    per_retry_timeout RouteSpecHttp2RouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    http_retry_events Sequence[str]
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcp_retry_events Sequence[str]
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries Number
    Maximum number of retries.
    perRetryTimeout Property Map
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    httpRetryEvents List<String>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents List<String>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.

    RouteSpecHttp2RouteRetryPolicyPerRetryTimeout, RouteSpecHttp2RouteRetryPolicyPerRetryTimeoutArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecHttp2RouteTimeout, RouteSpecHttp2RouteTimeoutArgs

    Idle RouteSpecHttp2RouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    PerRequest RouteSpecHttp2RouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    Idle RouteSpecHttp2RouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    PerRequest RouteSpecHttp2RouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    per_request object
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecHttp2RouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest RouteSpecHttp2RouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecHttp2RouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest RouteSpecHttp2RouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecHttp2RouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    per_request RouteSpecHttp2RouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest Property Map
    Per request timeout. See spec.http_route.timeout.per_request Block for details.

    RouteSpecHttp2RouteTimeoutIdle, RouteSpecHttp2RouteTimeoutIdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecHttp2RouteTimeoutPerRequest, RouteSpecHttp2RouteTimeoutPerRequestArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecHttpRoute, RouteSpecHttpRouteArgs

    Action RouteSpecHttpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecHttpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    RetryPolicy RouteSpecHttpRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    Timeout RouteSpecHttpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    Action RouteSpecHttpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecHttpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    RetryPolicy RouteSpecHttpRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    Timeout RouteSpecHttpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action object
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retry_policy object
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout object
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecHttpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecHttpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy RouteSpecHttpRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecHttpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecHttpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecHttpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy RouteSpecHttpRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecHttpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecHttpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecHttpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retry_policy RouteSpecHttpRouteRetryPolicy
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout RouteSpecHttpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action Property Map
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    retryPolicy Property Map
    Retry policy. See spec.http_route.retry_policy Block for details.
    timeout Property Map
    Types of timeouts. See spec.tcp_route.timeout Block for details.

    RouteSpecHttpRouteAction, RouteSpecHttpRouteActionArgs

    WeightedTargets List<RouteSpecHttpRouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    WeightedTargets []RouteSpecHttpRouteActionWeightedTarget
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets list(object)
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<RouteSpecHttpRouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets RouteSpecHttpRouteActionWeightedTarget[]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets Sequence[RouteSpecHttpRouteActionWeightedTarget]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<Property Map>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.

    RouteSpecHttpRouteActionWeightedTarget, RouteSpecHttpRouteActionWeightedTargetArgs

    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    virtual_node string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Integer
    Relative weight of the weighted target. An integer between 0 and 100.
    port Integer
    Port number to match from the request.
    virtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtual_node str
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    port int
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Number
    Relative weight of the weighted target. An integer between 0 and 100.
    port Number
    Port number to match from the request.

    RouteSpecHttpRouteMatch, RouteSpecHttpRouteMatchArgs

    Headers List<RouteSpecHttpRouteMatchHeader>
    Client request headers to match on. See spec.http_route.match.header Block for details.
    Method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    Path RouteSpecHttpRouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    Port int
    Port number to match from the request.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    QueryParameters List<RouteSpecHttpRouteMatchQueryParameter>
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    Scheme string
    Client request header scheme to match on. Valid values: http, https.
    Headers []RouteSpecHttpRouteMatchHeader
    Client request headers to match on. See spec.http_route.match.header Block for details.
    Method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    Path RouteSpecHttpRouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    Port int
    Port number to match from the request.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    QueryParameters []RouteSpecHttpRouteMatchQueryParameter
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    Scheme string
    Client request header scheme to match on. Valid values: http, https.
    headers list(object)
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path object
    Client request path to match on. See spec.http_route.match.path Block for details.
    port number
    Port number to match from the request.
    prefix string
    Header value sent by the client must begin with the specified characters.
    query_parameters list(object)
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme string
    Client request header scheme to match on. Valid values: http, https.
    headers List<RouteSpecHttpRouteMatchHeader>
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method String
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path RouteSpecHttpRouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    port Integer
    Port number to match from the request.
    prefix String
    Header value sent by the client must begin with the specified characters.
    queryParameters List<RouteSpecHttpRouteMatchQueryParameter>
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme String
    Client request header scheme to match on. Valid values: http, https.
    headers RouteSpecHttpRouteMatchHeader[]
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method string
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path RouteSpecHttpRouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    port number
    Port number to match from the request.
    prefix string
    Header value sent by the client must begin with the specified characters.
    queryParameters RouteSpecHttpRouteMatchQueryParameter[]
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme string
    Client request header scheme to match on. Valid values: http, https.
    headers Sequence[RouteSpecHttpRouteMatchHeader]
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method str
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path RouteSpecHttpRouteMatchPath
    Client request path to match on. See spec.http_route.match.path Block for details.
    port int
    Port number to match from the request.
    prefix str
    Header value sent by the client must begin with the specified characters.
    query_parameters Sequence[RouteSpecHttpRouteMatchQueryParameter]
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme str
    Client request header scheme to match on. Valid values: http, https.
    headers List<Property Map>
    Client request headers to match on. See spec.http_route.match.header Block for details.
    method String
    Client request header method to match on. Valid values: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH.
    path Property Map
    Client request path to match on. See spec.http_route.match.path Block for details.
    port Number
    Port number to match from the request.
    prefix String
    Header value sent by the client must begin with the specified characters.
    queryParameters List<Property Map>
    Client request query parameters to match on. See spec.http_route.match.query_parameter Block for details.
    scheme String
    Client request header scheme to match on. Valid values: http, https.

    RouteSpecHttpRouteMatchHeader, RouteSpecHttpRouteMatchHeaderArgs

    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    Match RouteSpecHttpRouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    Match RouteSpecHttpRouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert Boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecHttpRouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecHttpRouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name str
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert bool
    Whether to match on the opposite of the match method and value. Default is false.
    match RouteSpecHttpRouteMatchHeaderMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    invert Boolean
    Whether to match on the opposite of the match method and value. Default is false.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.

    RouteSpecHttpRouteMatchHeaderMatch, RouteSpecHttpRouteMatchHeaderMatchArgs

    Exact string
    Exact query parameter to match on.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    Range RouteSpecHttpRouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    Regex string
    Regex used to match the path.
    Suffix string
    Header value sent by the client must end with the specified characters.
    Exact string
    Exact query parameter to match on.
    Prefix string
    Header value sent by the client must begin with the specified characters.
    Range RouteSpecHttpRouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    Regex string
    Regex used to match the path.
    Suffix string
    Header value sent by the client must end with the specified characters.
    exact string
    Exact query parameter to match on.
    prefix string
    Header value sent by the client must begin with the specified characters.
    range object
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex string
    Regex used to match the path.
    suffix string
    Header value sent by the client must end with the specified characters.
    exact String
    Exact query parameter to match on.
    prefix String
    Header value sent by the client must begin with the specified characters.
    range RouteSpecHttpRouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex String
    Regex used to match the path.
    suffix String
    Header value sent by the client must end with the specified characters.
    exact string
    Exact query parameter to match on.
    prefix string
    Header value sent by the client must begin with the specified characters.
    range RouteSpecHttpRouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex string
    Regex used to match the path.
    suffix string
    Header value sent by the client must end with the specified characters.
    exact str
    Exact query parameter to match on.
    prefix str
    Header value sent by the client must begin with the specified characters.
    range RouteSpecHttpRouteMatchHeaderMatchRange
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex str
    Regex used to match the path.
    suffix str
    Header value sent by the client must end with the specified characters.
    exact String
    Exact query parameter to match on.
    prefix String
    Header value sent by the client must begin with the specified characters.
    range Property Map
    Object that specifies the range of numbers that the header value sent by the client must be included in. See spec.http_route.match.header.match.range Block for details.
    regex String
    Regex used to match the path.
    suffix String
    Header value sent by the client must end with the specified characters.

    RouteSpecHttpRouteMatchHeaderMatchRange, RouteSpecHttpRouteMatchHeaderMatchRangeArgs

    End int
    End of the range.
    Start int
    Start of the range.
    End int
    End of the range.
    Start int
    Start of the range.
    end number
    End of the range.
    start number
    Start of the range.
    end Integer
    End of the range.
    start Integer
    Start of the range.
    end number
    End of the range.
    start number
    Start of the range.
    end int
    End of the range.
    start int
    Start of the range.
    end Number
    End of the range.
    start Number
    Start of the range.

    RouteSpecHttpRouteMatchPath, RouteSpecHttpRouteMatchPathArgs

    Exact string
    Exact query parameter to match on.
    Regex string
    Regex used to match the path.
    Exact string
    Exact query parameter to match on.
    Regex string
    Regex used to match the path.
    exact string
    Exact query parameter to match on.
    regex string
    Regex used to match the path.
    exact String
    Exact query parameter to match on.
    regex String
    Regex used to match the path.
    exact string
    Exact query parameter to match on.
    regex string
    Regex used to match the path.
    exact str
    Exact query parameter to match on.
    regex str
    Regex used to match the path.
    exact String
    Exact query parameter to match on.
    regex String
    Regex used to match the path.

    RouteSpecHttpRouteMatchQueryParameter, RouteSpecHttpRouteMatchQueryParameterArgs

    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Match RouteSpecHttpRouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    Name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    Match RouteSpecHttpRouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    match RouteSpecHttpRouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name string
    Name to use for the route. Must be between 1 and 255 characters in length.
    match RouteSpecHttpRouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name str
    Name to use for the route. Must be between 1 and 255 characters in length.
    match RouteSpecHttpRouteMatchQueryParameterMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    name String
    Name to use for the route. Must be between 1 and 255 characters in length.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.

    RouteSpecHttpRouteMatchQueryParameterMatch, RouteSpecHttpRouteMatchQueryParameterMatchArgs

    Exact string
    Exact query parameter to match on.
    Exact string
    Exact query parameter to match on.
    exact string
    Exact query parameter to match on.
    exact String
    Exact query parameter to match on.
    exact string
    Exact query parameter to match on.
    exact str
    Exact query parameter to match on.
    exact String
    Exact query parameter to match on.

    RouteSpecHttpRouteRetryPolicy, RouteSpecHttpRouteRetryPolicyArgs

    MaxRetries int
    Maximum number of retries.
    PerRetryTimeout RouteSpecHttpRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    HttpRetryEvents List<string>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    TcpRetryEvents List<string>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    MaxRetries int
    Maximum number of retries.
    PerRetryTimeout RouteSpecHttpRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    HttpRetryEvents []string
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    TcpRetryEvents []string
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    max_retries number
    Maximum number of retries.
    per_retry_timeout object
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    http_retry_events list(string)
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcp_retry_events list(string)
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries Integer
    Maximum number of retries.
    perRetryTimeout RouteSpecHttpRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    httpRetryEvents List<String>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents List<String>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries number
    Maximum number of retries.
    perRetryTimeout RouteSpecHttpRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    httpRetryEvents string[]
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents string[]
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    max_retries int
    Maximum number of retries.
    per_retry_timeout RouteSpecHttpRouteRetryPolicyPerRetryTimeout
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    http_retry_events Sequence[str]
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcp_retry_events Sequence[str]
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.
    maxRetries Number
    Maximum number of retries.
    perRetryTimeout Property Map
    Per-retry timeout. See spec.http_route.retry_policy.per_retry_timeout Block for details.
    httpRetryEvents List<String>
    List of HTTP retry events. Valid values: client-error (HTTP status code 409), gateway-error (HTTP status codes 502, 503, and 504), server-error (HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511), stream-error (retry on refused stream).
    tcpRetryEvents List<String>
    List of TCP retry events. The only valid value is connection-error. You must specify at least one value for httpRetryEvents, or at least one value for tcpRetryEvents.

    RouteSpecHttpRouteRetryPolicyPerRetryTimeout, RouteSpecHttpRouteRetryPolicyPerRetryTimeoutArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecHttpRouteTimeout, RouteSpecHttpRouteTimeoutArgs

    Idle RouteSpecHttpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    PerRequest RouteSpecHttpRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    Idle RouteSpecHttpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    PerRequest RouteSpecHttpRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    per_request object
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecHttpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest RouteSpecHttpRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecHttpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest RouteSpecHttpRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle RouteSpecHttpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    per_request RouteSpecHttpRouteTimeoutPerRequest
    Per request timeout. See spec.http_route.timeout.per_request Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    perRequest Property Map
    Per request timeout. See spec.http_route.timeout.per_request Block for details.

    RouteSpecHttpRouteTimeoutIdle, RouteSpecHttpRouteTimeoutIdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecHttpRouteTimeoutPerRequest, RouteSpecHttpRouteTimeoutPerRequestArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    RouteSpecTcpRoute, RouteSpecTcpRouteArgs

    Action RouteSpecTcpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecTcpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    Timeout RouteSpecTcpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    Action RouteSpecTcpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    Match RouteSpecTcpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    Timeout RouteSpecTcpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action object
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match object
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    timeout object
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecTcpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecTcpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    timeout RouteSpecTcpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecTcpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecTcpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    timeout RouteSpecTcpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action RouteSpecTcpRouteAction
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match RouteSpecTcpRouteMatch
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    timeout RouteSpecTcpRouteTimeout
    Types of timeouts. See spec.tcp_route.timeout Block for details.
    action Property Map
    Action to take if a match is determined. See spec.tcp_route.action Block for details.
    match Property Map
    Criteria for determining a TCP request match. See spec.tcp_route.match Block for details.
    timeout Property Map
    Types of timeouts. See spec.tcp_route.timeout Block for details.

    RouteSpecTcpRouteAction, RouteSpecTcpRouteActionArgs

    WeightedTargets List<RouteSpecTcpRouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    WeightedTargets []RouteSpecTcpRouteActionWeightedTarget
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets list(object)
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<RouteSpecTcpRouteActionWeightedTarget>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets RouteSpecTcpRouteActionWeightedTarget[]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weighted_targets Sequence[RouteSpecTcpRouteActionWeightedTarget]
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.
    weightedTargets List<Property Map>
    Targets that traffic is routed to when a request matches the route. You can specify one or more targets and their relative weights with which to distribute traffic. See spec.tcp_route.action.weighted_target Block for details.

    RouteSpecTcpRouteActionWeightedTarget, RouteSpecTcpRouteActionWeightedTargetArgs

    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    VirtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    Weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    Port int
    Port number to match from the request.
    virtual_node string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Integer
    Relative weight of the weighted target. An integer between 0 and 100.
    port Integer
    Port number to match from the request.
    virtualNode string
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight number
    Relative weight of the weighted target. An integer between 0 and 100.
    port number
    Port number to match from the request.
    virtual_node str
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight int
    Relative weight of the weighted target. An integer between 0 and 100.
    port int
    Port number to match from the request.
    virtualNode String
    Virtual node to associate with the weighted target. Must be between 1 and 255 characters in length.
    weight Number
    Relative weight of the weighted target. An integer between 0 and 100.
    port Number
    Port number to match from the request.

    RouteSpecTcpRouteMatch, RouteSpecTcpRouteMatchArgs

    Port int
    Port number to match from the request.
    Port int
    Port number to match from the request.
    port number
    Port number to match from the request.
    port Integer
    Port number to match from the request.
    port number
    Port number to match from the request.
    port int
    Port number to match from the request.
    port Number
    Port number to match from the request.

    RouteSpecTcpRouteTimeout, RouteSpecTcpRouteTimeoutArgs

    Idle RouteSpecTcpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    Idle RouteSpecTcpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    idle object
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    idle RouteSpecTcpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    idle RouteSpecTcpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    idle RouteSpecTcpRouteTimeoutIdle
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.
    idle Property Map
    Idle timeout. An idle timeout bounds the amount of time that a connection may be idle. See spec.tcp_route.timeout.idle Block for details.

    RouteSpecTcpRouteTimeoutIdle, RouteSpecTcpRouteTimeoutIdleArgs

    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    Unit string
    Unit of time. Valid values: ms, s.
    Value int
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Integer
    Number of time units. Minimum value of 0.
    unit string
    Unit of time. Valid values: ms, s.
    value number
    Number of time units. Minimum value of 0.
    unit str
    Unit of time. Valid values: ms, s.
    value int
    Number of time units. Minimum value of 0.
    unit String
    Unit of time. Valid values: ms, s.
    value Number
    Number of time units. Minimum value of 0.

    Import

    Using pulumi import, import App Mesh virtual routes using meshName and virtualRouterName together with the route’s name. For example:

    $ pulumi import aws:appmesh/route:Route serviceb simpleapp/serviceB/serviceB-route
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo aws logo
    Viewing docs for AWS v7.46.0
    published on Thursday, Sep 10, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial