AWS v6.71.0 published on Friday, Mar 7, 2025 by Pulumi
aws.lb.getListener
Explore with Pulumi AI
Note:
aws.alb.Listeneris known asaws.lb.Listener. The functionality is identical.
Provides information about a Load Balancer Listener.
This data source can prove useful when a module accepts an LB Listener as an input variable and needs to know the LB it is attached to, or other information specific to the listener in question.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const config = new pulumi.Config();
const listenerArn = config.require("listenerArn");
const listener = aws.lb.getListener({
    arn: listenerArn,
});
// get listener from load_balancer_arn and port
const selected = aws.lb.getLoadBalancer({
    name: "default-public",
});
const selected443 = selected.then(selected => aws.lb.getListener({
    loadBalancerArn: selected.arn,
    port: 443,
}));
import pulumi
import pulumi_aws as aws
config = pulumi.Config()
listener_arn = config.require("listenerArn")
listener = aws.lb.get_listener(arn=listener_arn)
# get listener from load_balancer_arn and port
selected = aws.lb.get_load_balancer(name="default-public")
selected443 = aws.lb.get_listener(load_balancer_arn=selected.arn,
    port=443)
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/lb"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		listenerArn := cfg.Require("listenerArn")
		_, err := lb.LookupListener(ctx, &lb.LookupListenerArgs{
			Arn: pulumi.StringRef(listenerArn),
		}, nil)
		if err != nil {
			return err
		}
		// get listener from load_balancer_arn and port
		selected, err := lb.LookupLoadBalancer(ctx, &lb.LookupLoadBalancerArgs{
			Name: pulumi.StringRef("default-public"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = lb.LookupListener(ctx, &lb.LookupListenerArgs{
			LoadBalancerArn: pulumi.StringRef(selected.Arn),
			Port:            pulumi.IntRef(443),
		}, nil)
		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 config = new Config();
    var listenerArn = config.Require("listenerArn");
    var listener = Aws.LB.GetListener.Invoke(new()
    {
        Arn = listenerArn,
    });
    // get listener from load_balancer_arn and port
    var selected = Aws.LB.GetLoadBalancer.Invoke(new()
    {
        Name = "default-public",
    });
    var selected443 = Aws.LB.GetListener.Invoke(new()
    {
        LoadBalancerArn = selected.Apply(getLoadBalancerResult => getLoadBalancerResult.Arn),
        Port = 443,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.lb.LbFunctions;
import com.pulumi.aws.lb.inputs.GetListenerArgs;
import com.pulumi.aws.lb.inputs.GetLoadBalancerArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var config = ctx.config();
        final var listenerArn = config.get("listenerArn");
        final var listener = LbFunctions.getListener(GetListenerArgs.builder()
            .arn(listenerArn)
            .build());
        // get listener from load_balancer_arn and port
        final var selected = LbFunctions.getLoadBalancer(GetLoadBalancerArgs.builder()
            .name("default-public")
            .build());
        final var selected443 = LbFunctions.getListener(GetListenerArgs.builder()
            .loadBalancerArn(selected.applyValue(getLoadBalancerResult -> getLoadBalancerResult.arn()))
            .port(443)
            .build());
    }
}
configuration:
  # get listener from listener arn
  listenerArn:
    type: string
variables:
  listener:
    fn::invoke:
      function: aws:lb:getListener
      arguments:
        arn: ${listenerArn}
  # get listener from load_balancer_arn and port
  selected:
    fn::invoke:
      function: aws:lb:getLoadBalancer
      arguments:
        name: default-public
  selected443:
    fn::invoke:
      function: aws:lb:getListener
      arguments:
        loadBalancerArn: ${selected.arn}
        port: 443
Using getListener
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getListener(args: GetListenerArgs, opts?: InvokeOptions): Promise<GetListenerResult>
function getListenerOutput(args: GetListenerOutputArgs, opts?: InvokeOptions): Output<GetListenerResult>def get_listener(arn: Optional[str] = None,
                 load_balancer_arn: Optional[str] = None,
                 port: Optional[int] = None,
                 tags: Optional[Mapping[str, str]] = None,
                 opts: Optional[InvokeOptions] = None) -> GetListenerResult
def get_listener_output(arn: Optional[pulumi.Input[str]] = None,
                 load_balancer_arn: Optional[pulumi.Input[str]] = None,
                 port: Optional[pulumi.Input[int]] = None,
                 tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
                 opts: Optional[InvokeOptions] = None) -> Output[GetListenerResult]func LookupListener(ctx *Context, args *LookupListenerArgs, opts ...InvokeOption) (*LookupListenerResult, error)
func LookupListenerOutput(ctx *Context, args *LookupListenerOutputArgs, opts ...InvokeOption) LookupListenerResultOutput> Note: This function is named LookupListener in the Go SDK.
public static class GetListener 
{
    public static Task<GetListenerResult> InvokeAsync(GetListenerArgs args, InvokeOptions? opts = null)
    public static Output<GetListenerResult> Invoke(GetListenerInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetListenerResult> getListener(GetListenerArgs args, InvokeOptions options)
public static Output<GetListenerResult> getListener(GetListenerArgs args, InvokeOptions options)
fn::invoke:
  function: aws:lb/getListener:getListener
  arguments:
    # arguments dictionaryThe following arguments are supported:
- Arn string
- ARN of the listener. Required if load_balancer_arnandportis not set.
- LoadBalancer stringArn 
- ARN of the load balancer. Required if arnis not set.
- Port int
- Port of the listener. Required if arnis not set.
- Dictionary<string, string>
- Arn string
- ARN of the listener. Required if load_balancer_arnandportis not set.
- LoadBalancer stringArn 
- ARN of the load balancer. Required if arnis not set.
- Port int
- Port of the listener. Required if arnis not set.
- map[string]string
- arn String
- ARN of the listener. Required if load_balancer_arnandportis not set.
- loadBalancer StringArn 
- ARN of the load balancer. Required if arnis not set.
- port Integer
- Port of the listener. Required if arnis not set.
- Map<String,String>
- arn string
- ARN of the listener. Required if load_balancer_arnandportis not set.
- loadBalancer stringArn 
- ARN of the load balancer. Required if arnis not set.
- port number
- Port of the listener. Required if arnis not set.
- {[key: string]: string}
- arn str
- ARN of the listener. Required if load_balancer_arnandportis not set.
- load_balancer_ strarn 
- ARN of the load balancer. Required if arnis not set.
- port int
- Port of the listener. Required if arnis not set.
- Mapping[str, str]
- arn String
- ARN of the listener. Required if load_balancer_arnandportis not set.
- loadBalancer StringArn 
- ARN of the load balancer. Required if arnis not set.
- port Number
- Port of the listener. Required if arnis not set.
- Map<String>
getListener Result
The following output properties are available:
- AlpnPolicy string
- Arn string
- CertificateArn string
- DefaultActions List<GetListener Default Action> 
- Id string
- The provider-assigned unique ID for this managed resource.
- LoadBalancer stringArn 
- MutualAuthentications List<GetListener Mutual Authentication> 
- Port int
- Protocol string
- SslPolicy string
- Dictionary<string, string>
- AlpnPolicy string
- Arn string
- CertificateArn string
- DefaultActions []GetListener Default Action 
- Id string
- The provider-assigned unique ID for this managed resource.
- LoadBalancer stringArn 
- MutualAuthentications []GetListener Mutual Authentication 
- Port int
- Protocol string
- SslPolicy string
- map[string]string
- alpnPolicy String
- arn String
- certificateArn String
- defaultActions List<GetListener Default Action> 
- id String
- The provider-assigned unique ID for this managed resource.
- loadBalancer StringArn 
- mutualAuthentications List<GetListener Mutual Authentication> 
- port Integer
- protocol String
- sslPolicy String
- Map<String,String>
- alpnPolicy string
- arn string
- certificateArn string
- defaultActions GetListener Default Action[] 
- id string
- The provider-assigned unique ID for this managed resource.
- loadBalancer stringArn 
- mutualAuthentications GetListener Mutual Authentication[] 
- port number
- protocol string
- sslPolicy string
- {[key: string]: string}
- alpn_policy str
- arn str
- certificate_arn str
- default_actions Sequence[GetListener Default Action] 
- id str
- The provider-assigned unique ID for this managed resource.
- load_balancer_ strarn 
- mutual_authentications Sequence[GetListener Mutual Authentication] 
- port int
- protocol str
- ssl_policy str
- Mapping[str, str]
- alpnPolicy String
- arn String
- certificateArn String
- defaultActions List<Property Map>
- id String
- The provider-assigned unique ID for this managed resource.
- loadBalancer StringArn 
- mutualAuthentications List<Property Map>
- port Number
- protocol String
- sslPolicy String
- Map<String>
Supporting Types
GetListenerDefaultAction   
- AuthenticateCognitos List<GetListener Default Action Authenticate Cognito> 
- AuthenticateOidcs List<GetListener Default Action Authenticate Oidc> 
- FixedResponses List<GetListener Default Action Fixed Response> 
- Forwards
List<GetListener Default Action Forward> 
- Order int
- Redirects
List<GetListener Default Action Redirect> 
- TargetGroup stringArn 
- Type string
- AuthenticateCognitos []GetListener Default Action Authenticate Cognito 
- AuthenticateOidcs []GetListener Default Action Authenticate Oidc 
- FixedResponses []GetListener Default Action Fixed Response 
- Forwards
[]GetListener Default Action Forward 
- Order int
- Redirects
[]GetListener Default Action Redirect 
- TargetGroup stringArn 
- Type string
- authenticateCognitos List<GetListener Default Action Authenticate Cognito> 
- authenticateOidcs List<GetListener Default Action Authenticate Oidc> 
- fixedResponses List<GetListener Default Action Fixed Response> 
- forwards
List<GetListener Default Action Forward> 
- order Integer
- redirects
List<GetListener Default Action Redirect> 
- targetGroup StringArn 
- type String
- authenticateCognitos GetListener Default Action Authenticate Cognito[] 
- authenticateOidcs GetListener Default Action Authenticate Oidc[] 
- fixedResponses GetListener Default Action Fixed Response[] 
- forwards
GetListener Default Action Forward[] 
- order number
- redirects
GetListener Default Action Redirect[] 
- targetGroup stringArn 
- type string
- authenticate_cognitos Sequence[GetListener Default Action Authenticate Cognito] 
- authenticate_oidcs Sequence[GetListener Default Action Authenticate Oidc] 
- fixed_responses Sequence[GetListener Default Action Fixed Response] 
- forwards
Sequence[GetListener Default Action Forward] 
- order int
- redirects
Sequence[GetListener Default Action Redirect] 
- target_group_ strarn 
- type str
GetListenerDefaultActionAuthenticateCognito     
- AuthenticationRequest Dictionary<string, string>Extra Params 
- OnUnauthenticated stringRequest 
- Scope string
- string
- SessionTimeout int
- UserPool stringArn 
- UserPool stringClient Id 
- UserPool stringDomain 
- AuthenticationRequest map[string]stringExtra Params 
- OnUnauthenticated stringRequest 
- Scope string
- string
- SessionTimeout int
- UserPool stringArn 
- UserPool stringClient Id 
- UserPool stringDomain 
- authenticationRequest Map<String,String>Extra Params 
- onUnauthenticated StringRequest 
- scope String
- String
- sessionTimeout Integer
- userPool StringArn 
- userPool StringClient Id 
- userPool StringDomain 
- authenticationRequest {[key: string]: string}Extra Params 
- onUnauthenticated stringRequest 
- scope string
- string
- sessionTimeout number
- userPool stringArn 
- userPool stringClient Id 
- userPool stringDomain 
- authentication_request_ Mapping[str, str]extra_ params 
- on_unauthenticated_ strrequest 
- scope str
- str
- session_timeout int
- user_pool_ strarn 
- user_pool_ strclient_ id 
- user_pool_ strdomain 
- authenticationRequest Map<String>Extra Params 
- onUnauthenticated StringRequest 
- scope String
- String
- sessionTimeout Number
- userPool StringArn 
- userPool StringClient Id 
- userPool StringDomain 
GetListenerDefaultActionAuthenticateOidc     
- AuthenticationRequest Dictionary<string, string>Extra Params 
- string
- ClientId string
- ClientSecret string
- Issuer string
- OnUnauthenticated stringRequest 
- Scope string
- string
- SessionTimeout int
- TokenEndpoint string
- UserInfo stringEndpoint 
- AuthenticationRequest map[string]stringExtra Params 
- string
- ClientId string
- ClientSecret string
- Issuer string
- OnUnauthenticated stringRequest 
- Scope string
- string
- SessionTimeout int
- TokenEndpoint string
- UserInfo stringEndpoint 
- authenticationRequest Map<String,String>Extra Params 
- String
- clientId String
- clientSecret String
- issuer String
- onUnauthenticated StringRequest 
- scope String
- String
- sessionTimeout Integer
- tokenEndpoint String
- userInfo StringEndpoint 
- authenticationRequest {[key: string]: string}Extra Params 
- string
- clientId string
- clientSecret string
- issuer string
- onUnauthenticated stringRequest 
- scope string
- string
- sessionTimeout number
- tokenEndpoint string
- userInfo stringEndpoint 
- authentication_request_ Mapping[str, str]extra_ params 
- str
- client_id str
- client_secret str
- issuer str
- on_unauthenticated_ strrequest 
- scope str
- str
- session_timeout int
- token_endpoint str
- user_info_ strendpoint 
- authenticationRequest Map<String>Extra Params 
- String
- clientId String
- clientSecret String
- issuer String
- onUnauthenticated StringRequest 
- scope String
- String
- sessionTimeout Number
- tokenEndpoint String
- userInfo StringEndpoint 
GetListenerDefaultActionFixedResponse     
- ContentType string
- MessageBody string
- StatusCode string
- ContentType string
- MessageBody string
- StatusCode string
- contentType String
- messageBody String
- statusCode String
- contentType string
- messageBody string
- statusCode string
- content_type str
- message_body str
- status_code str
- contentType String
- messageBody String
- statusCode String
GetListenerDefaultActionForward    
GetListenerDefaultActionForwardStickiness     
GetListenerDefaultActionForwardTargetGroup      
GetListenerDefaultActionRedirect    
GetListenerMutualAuthentication   
- AdvertiseTrust stringStore Ca Names 
- IgnoreClient boolCertificate Expiry 
- Mode string
- TrustStore stringArn 
- AdvertiseTrust stringStore Ca Names 
- IgnoreClient boolCertificate Expiry 
- Mode string
- TrustStore stringArn 
- advertiseTrust StringStore Ca Names 
- ignoreClient BooleanCertificate Expiry 
- mode String
- trustStore StringArn 
- advertiseTrust stringStore Ca Names 
- ignoreClient booleanCertificate Expiry 
- mode string
- trustStore stringArn 
- advertiseTrust StringStore Ca Names 
- ignoreClient BooleanCertificate Expiry 
- mode String
- trustStore StringArn 
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the awsTerraform Provider.