# YarpConfigurationBuilderExtensions Methods

- Package: [Aspire.Hosting.Yarp](/reference/api/csharp/aspire.hosting.yarp.md)
- Type: [YarpConfigurationBuilderExtensions](/reference/api/csharp/aspire.hosting.yarp/yarpconfigurationbuilderextensions.md)
- Kind: `Methods`
- Members: `7`

Collection of extensions methods for [IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md)

## AddRoute(IYarpConfigurationBuilder, YarpCluster)

- Name: `AddRoute(IYarpConfigurationBuilder, YarpCluster)`
- Modifiers: `extension`
- Returns: [YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/cbc352350f1a9bafbaff10d14a2c8de4ac186a48/src/Aspire.Hosting.Yarp/ConfigurationBuilder/IYarpConfigurationBuilder.cs#L155)

Add a new catch all route to YARP that will target the cluster in parameter.

```csharp
public static class YarpConfigurationBuilderExtensions
{
    public static YarpRoute AddRoute(
        this IYarpConfigurationBuilder builder,
        YarpCluster cluster)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md))
  The builder instance.
- `cluster` ([YarpCluster](/reference/api/csharp/aspire.hosting.yarp/yarpcluster.md))
  The target cluster for this route.

## Returns

[YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md) -- The created route for further configuration.

## ATS metadata

### Ignored by ATS

- Excluded from automatic Polyglot export.

## AddRoute(IYarpConfigurationBuilder, EndpointReference)

- Name: `AddRoute(IYarpConfigurationBuilder, EndpointReference)`
- Modifiers: `extension`
- Returns: [YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/cbc352350f1a9bafbaff10d14a2c8de4ac186a48/src/Aspire.Hosting.Yarp/ConfigurationBuilder/IYarpConfigurationBuilder.cs#L181)

Add a new catch all route to YARP that will target the cluster in parameter.

```csharp
public static class YarpConfigurationBuilderExtensions
{
    public static YarpRoute AddRoute(
        this IYarpConfigurationBuilder builder,
        EndpointReference endpoint)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md))
  The builder instance.
- `endpoint` (`EndpointReference`)
  The target endpoint for this route.

## Returns

[YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md) -- The created route for further configuration.

## ATS metadata

### Ignored by ATS

- Excluded from automatic Polyglot export.

## AddRoute(IYarpConfigurationBuilder, IResourceBuilder<IResourceWithServiceDiscovery>)

- Name: `AddRoute(IYarpConfigurationBuilder, IResourceBuilder<IResourceWithServiceDiscovery>)`
- Modifiers: `extension`
- Returns: [YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/cbc352350f1a9bafbaff10d14a2c8de4ac186a48/src/Aspire.Hosting.Yarp/ConfigurationBuilder/IYarpConfigurationBuilder.cs#L193)

Add a new catch all route to YARP that will target the cluster in parameter.

```csharp
public static class YarpConfigurationBuilderExtensions
{
    public static YarpRoute AddRoute(
        this IYarpConfigurationBuilder builder,
        IResourceBuilder<IResourceWithServiceDiscovery> resource)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md))
  The builder instance.
- `resource` (`IResourceBuilder<IResourceWithServiceDiscovery>`)
  The target resource for this route.

## Returns

[YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md) -- The created route for further configuration.

## ATS metadata

### Ignored by ATS

- Excluded from automatic Polyglot export.

## AddRoute(IYarpConfigurationBuilder, string, EndpointReference)

- Name: `AddRoute(IYarpConfigurationBuilder, string, EndpointReference)`
- Modifiers: `extension`
- Returns: [YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/cbc352350f1a9bafbaff10d14a2c8de4ac186a48/src/Aspire.Hosting.Yarp/ConfigurationBuilder/IYarpConfigurationBuilder.cs#L206-L207)

Add a new route to YARP that will target the cluster in parameter.

```csharp
public static class YarpConfigurationBuilderExtensions
{
    public static YarpRoute AddRoute(
        this IYarpConfigurationBuilder builder,
        string path,
        EndpointReference endpoint)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md))
  The builder instance.
- `path` (`string`)
  The path to match for this route.
- `endpoint` (`EndpointReference`)
  The target endpoint for this route.

## Returns

[YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md) -- The created route for further configuration.

## ATS metadata

### Ignored by ATS

- Excluded from automatic Polyglot export.

## AddRoute(IYarpConfigurationBuilder, string, IResourceBuilder<IResourceWithServiceDiscovery>)

- Name: `AddRoute(IYarpConfigurationBuilder, string, IResourceBuilder<IResourceWithServiceDiscovery>)`
- Modifiers: `extension`
- Returns: [YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/cbc352350f1a9bafbaff10d14a2c8de4ac186a48/src/Aspire.Hosting.Yarp/ConfigurationBuilder/IYarpConfigurationBuilder.cs#L220-L221)

Add a new route to YARP that will target the cluster in parameter.

```csharp
public static class YarpConfigurationBuilderExtensions
{
    public static YarpRoute AddRoute(
        this IYarpConfigurationBuilder builder,
        string path,
        IResourceBuilder<IResourceWithServiceDiscovery> resource)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md))
  The builder instance.
- `path` (`string`)
  The path to match for this route.
- `resource` (`IResourceBuilder<IResourceWithServiceDiscovery>`)
  The target endpoint for this route.

## Returns

[YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md) -- The created route for further configuration.

## ATS metadata

### Ignored by ATS

- Excluded from automatic Polyglot export.

## AddRoute(IYarpConfigurationBuilder, string, IResourceBuilder<ExternalServiceResource>)

- Name: `AddRoute(IYarpConfigurationBuilder, string, IResourceBuilder<ExternalServiceResource>)`
- Modifiers: `extension`
- Returns: [YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/cbc352350f1a9bafbaff10d14a2c8de4ac186a48/src/Aspire.Hosting.Yarp/ConfigurationBuilder/IYarpConfigurationBuilder.cs#L234-L235)

Add a new route to YARP that will target the external service in parameter.

```csharp
public static class YarpConfigurationBuilderExtensions
{
    public static YarpRoute AddRoute(
        this IYarpConfigurationBuilder builder,
        string path,
        IResourceBuilder<ExternalServiceResource> externalService)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md))
  The builder instance.
- `path` (`string`)
  The path to match for this route.
- `externalService` (`IResourceBuilder<ExternalServiceResource>`)
  The target external service for this route.

## Returns

[YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md) -- The created route for further configuration.

## ATS metadata

### Ignored by ATS

- Excluded from automatic Polyglot export.

## AddRoute(IYarpConfigurationBuilder, IResourceBuilder<ExternalServiceResource>)

- Name: `AddRoute(IYarpConfigurationBuilder, IResourceBuilder<ExternalServiceResource>)`
- Modifiers: `extension`
- Returns: [YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/cbc352350f1a9bafbaff10d14a2c8de4ac186a48/src/Aspire.Hosting.Yarp/ConfigurationBuilder/IYarpConfigurationBuilder.cs#L263)

Add a new catch all route to YARP that will target the cluster in parameter.

```csharp
public static class YarpConfigurationBuilderExtensions
{
    public static YarpRoute AddRoute(
        this IYarpConfigurationBuilder builder,
        IResourceBuilder<ExternalServiceResource> externalService)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IYarpConfigurationBuilder](/reference/api/csharp/aspire.hosting.yarp/iyarpconfigurationbuilder.md))
  The builder instance.
- `externalService` (`IResourceBuilder<ExternalServiceResource>`)
  The target external service for this route.

## Returns

[YarpRoute](/reference/api/csharp/aspire.hosting.yarp/yarproute.md) -- The created route for further configuration.

## ATS metadata

### Ignored by ATS

- Excluded from automatic Polyglot export.
