aws-cdk-lib.aws_lambda.FunctionUrl

class FunctionUrl (construct)

LanguageType name
.NETAmazon.CDK.AWS.Lambda.FunctionUrl
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awslambda#FunctionUrl
Javasoftware.amazon.awscdk.services.lambda.FunctionUrl
Pythonaws_cdk.aws_lambda.FunctionUrl
TypeScript (source)aws-cdk-lib » aws_lambda » FunctionUrl

Implements IConstruct, IDependable, IResource, IFunctionUrl

Defines a Lambda function url.

Example

// Can be a Function or an Alias
declare const fn: lambda.Function;
declare const myRole: iam.Role;

const fnUrl = fn.addFunctionUrl();
fnUrl.grantInvokeUrl(myRole);

new CfnOutput(this, 'TheUrl', {
  // The .url attributes will return the unique Function URL
  value: fnUrl.url,
});

Initializer

new FunctionUrl(scope: Construct, id: string, props: FunctionUrlProps)

Parameters

  • scope Construct
  • id string
  • props FunctionUrlProps

Construct Props

NameTypeDescription
functionIFunctionThe function to which this url refers.
authType?FunctionUrlAuthTypeThe type of authentication that your function URL uses.
cors?FunctionUrlCorsOptionsThe cross-origin resource sharing (CORS) settings for your function URL.
invokeMode?InvokeModeThe type of invocation mode that your Lambda function uses.

function

Type: IFunction

The function to which this url refers.

It can also be an Alias but not a Version.


authType?

Type: FunctionUrlAuthType (optional, default: FunctionUrlAuthType.AWS_IAM)

The type of authentication that your function URL uses.


cors?

Type: FunctionUrlCorsOptions (optional, default: No CORS configuration.)

The cross-origin resource sharing (CORS) settings for your function URL.


invokeMode?

Type: InvokeMode (optional, default: InvokeMode.BUFFERED)

The type of invocation mode that your Lambda function uses.

Properties

NameTypeDescription
envResourceEnvironmentThe environment this resource belongs to.
functionArnstringThe ARN of the function this URL refers to.
nodeNodeThe tree node.
stackStackThe stack in which this resource is defined.
urlstringThe url of the Lambda function.

env

Type: ResourceEnvironment

The environment this resource belongs to.

For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.


functionArn

Type: string

The ARN of the function this URL refers to.


node

Type: Node

The tree node.


stack

Type: Stack

The stack in which this resource is defined.


url

Type: string

The url of the Lambda function.

Methods

NameDescription
applyRemovalPolicy(policy)Apply the given removal policy to this resource.
grantInvokeUrl(grantee)Grant the given identity permissions to invoke this Lambda Function URL.
toString()Returns a string representation of this construct.

applyRemovalPolicy(policy)

public applyRemovalPolicy(policy: RemovalPolicy): void

Parameters

  • policy RemovalPolicy

Apply the given removal policy to this resource.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).


grantInvokeUrl(grantee)

public grantInvokeUrl(grantee: IGrantable): Grant

Parameters

  • grantee IGrantable

Returns

  • Grant

Grant the given identity permissions to invoke this Lambda Function URL.


toString()

public toString(): string

Returns

  • string

Returns a string representation of this construct.