All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.lambda.AWSLambda Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Lambda module holds the client classes that are used for communicating with AWS Lambda Service

There is a newer version: 1.12.753
Show newest version
/*
 * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.lambda;

import javax.annotation.Generated;

import com.amazonaws.*;
import com.amazonaws.regions.*;

import com.amazonaws.services.lambda.model.*;
import com.amazonaws.services.lambda.waiters.AWSLambdaWaiters;

/**
 * Interface for accessing AWS Lambda.
 * 

* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.lambda.AbstractAWSLambda} instead. *

*

* Lambda *

* Overview *

*

* Lambda is a compute service that lets you run code without provisioning or managing servers. Lambda runs your code on * a high-availability compute infrastructure and performs all of the administration of the compute resources, including * server and operating system maintenance, capacity provisioning and automatic scaling, code monitoring and logging. * With Lambda, you can run code for virtually any type of application or backend service. For more information about * the Lambda service, see What is Lambda in the * Lambda Developer Guide. *

*

* The Lambda API Reference provides information about each of the API methods, including details about the * parameters in each API request and response. *

*

*

* You can use Software Development Kits (SDKs), Integrated Development Environment (IDE) Toolkits, and command line * tools to access the API. For installation instructions, see Tools for Amazon * Web Services. *

*

* For a list of Region-specific endpoints that Lambda supports, see Lambda endpoints and quotas in the * Amazon Web Services General Reference.. *

*

* When making the API calls, you will need to authenticate your request by providing a signature. Lambda supports * signature version 4. For more information, see Signature Version 4 signing process * in the Amazon Web Services General Reference.. *

*

* CA certificates *

*

* Because Amazon Web Services SDKs use the CA certificates from your computer, changes to the certificates on the * Amazon Web Services servers can cause connection failures when you attempt to use an SDK. You can prevent these * failures by keeping your computer's CA certificates and operating system up-to-date. If you encounter this issue in a * corporate environment and do not manage your own computer, you might need to ask an administrator to assist with the * update process. The following list shows minimum operating system and Java versions: *

*
    *
  • *

    * Microsoft Windows versions that have updates from January 2005 or later installed contain at least one of the * required CAs in their trust list. *

    *
  • *
  • *

    * Mac OS X 10.4 with Java for Mac OS X 10.4 Release 5 (February 2007), Mac OS X 10.5 (October 2007), and later versions * contain at least one of the required CAs in their trust list. *

    *
  • *
  • *

    * Red Hat Enterprise Linux 5 (March 2007), 6, and 7 and CentOS 5, 6, and 7 all contain at least one of the required CAs * in their default trusted CA list. *

    *
  • *
  • *

    * Java 1.4.2_12 (May 2006), 5 Update 2 (March 2005), and all later versions, including Java 6 (December 2006), 7, and * 8, contain at least one of the required CAs in their default trusted CA list. *

    *
  • *
*

* When accessing the Lambda management console or Lambda API endpoints, whether through browsers or programmatically, * you will need to ensure your client machines support any of the following CAs: *

*
    *
  • *

    * Amazon Root CA 1 *

    *
  • *
  • *

    * Starfield Services Root Certificate Authority - G2 *

    *
  • *
  • *

    * Starfield Class 2 Certification Authority *

    *
  • *
*

* Root certificates from the first two authorities are available from Amazon trust services, but keeping your computer up-to-date is the * more straightforward solution. To learn more about ACM-provided certificates, see Amazon Web Services Certificate Manager FAQs. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AWSLambda { /** * The region metadata service name for computing region endpoints. You can use this value to retrieve metadata * (such as supported regions) of the service. * * @see RegionUtils#getRegionsForService(String) */ String ENDPOINT_PREFIX = "lambda"; /** * Overrides the default endpoint for this client ("lambda.us-east-1.amazonaws.com"). Callers can use this method to * control which AWS region they want to work with. *

* Callers can pass in just the endpoint (ex: "lambda.us-east-1.amazonaws.com") or a full URL, including the * protocol (ex: "lambda.us-east-1.amazonaws.com"). If the protocol is not specified here, the default protocol from * this client's {@link ClientConfiguration} will be used, which by default is HTTPS. *

* For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available * endpoints for all AWS services, see: https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/java-dg-region-selection.html#region-selection- * choose-endpoint *

* This method is not threadsafe. An endpoint should be configured when the client is created and before any * service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param endpoint * The endpoint (ex: "lambda.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: * "lambda.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will communicate with. * @deprecated use {@link AwsClientBuilder#setEndpointConfiguration(AwsClientBuilder.EndpointConfiguration)} for * example: * {@code builder.setEndpointConfiguration(new EndpointConfiguration(endpoint, signingRegion));} */ @Deprecated void setEndpoint(String endpoint); /** * An alternative to {@link AWSLambda#setEndpoint(String)}, sets the regional endpoint for this client's service * calls. Callers can use this method to control which AWS region they want to work with. *

* By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the * {@link ClientConfiguration} supplied at construction. *

* This method is not threadsafe. A region should be configured when the client is created and before any service * requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit * or retrying. * * @param region * The region this client will communicate with. See {@link Region#getRegion(com.amazonaws.regions.Regions)} * for accessing a given region. Must not be null and must be a region where the service is available. * * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) * @see Region#isServiceSupported(String) * @deprecated use {@link AwsClientBuilder#setRegion(String)} */ @Deprecated void setRegion(Region region); /** *

* Adds permissions to the resource-based policy of a version of an Lambda layer. Use this action * to grant layer usage permission to other accounts. You can grant permission to a single account, all accounts in * an organization, or all Amazon Web Services accounts. *

*

* To revoke permission, call RemoveLayerVersionPermission with the statement ID that you specified when you * added it. *

* * @param addLayerVersionPermissionRequest * @return Result of the AddLayerVersionPermission operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws PolicyLengthExceededException * The permissions policy for the resource is too large. For more information, see Lambda quotas. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @sample AWSLambda.AddLayerVersionPermission * @see AWS API Documentation */ AddLayerVersionPermissionResult addLayerVersionPermission(AddLayerVersionPermissionRequest addLayerVersionPermissionRequest); /** *

* Grants an Amazon Web Service, Amazon Web Services account, or Amazon Web Services organization permission to use * a function. You can apply the policy at the function level, or specify a qualifier to restrict access to a single * version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name (ARN) of that * version or alias to invoke the function. Note: Lambda does not support adding policies to version $LATEST. *

*

* To grant permission to another account, specify the account ID as the Principal. To grant permission * to an organization defined in Organizations, specify the organization ID as the PrincipalOrgID. For * Amazon Web Services, the principal is a domain-style identifier that the service defines, such as * s3.amazonaws.com or sns.amazonaws.com. For Amazon Web Services, you can also specify * the ARN of the associated resource as the SourceArn. If you grant permission to a service principal * without specifying the source, other accounts could potentially configure resources in their account to invoke * your Lambda function. *

*

* This operation adds a statement to a resource-based permissions policy for the function. For more information * about function policies, see Using resource-based * policies for Lambda. *

* * @param addPermissionRequest * @return Result of the AddPermission operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws PolicyLengthExceededException * The permissions policy for the resource is too large. For more information, see Lambda quotas. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @sample AWSLambda.AddPermission * @see AWS API * Documentation */ AddPermissionResult addPermission(AddPermissionRequest addPermissionRequest); /** *

* Creates an alias for a * Lambda function version. Use aliases to provide clients with a function identifier that you can update to invoke * a different version. *

*

* You can also map an alias to split invocation requests between two versions. Use the RoutingConfig * parameter to specify a second version and the percentage of invocation requests that it receives. *

* * @param createAliasRequest * @return Result of the CreateAlias operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.CreateAlias * @see AWS API * Documentation */ CreateAliasResult createAlias(CreateAliasRequest createAliasRequest); /** *

* Creates a code signing configuration. A code signing configuration * defines a list of allowed signing profiles and defines the code-signing validation policy (action to be taken if * deployment validation checks fail). *

* * @param createCodeSigningConfigRequest * @return Result of the CreateCodeSigningConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @sample AWSLambda.CreateCodeSigningConfig * @see AWS * API Documentation */ CreateCodeSigningConfigResult createCodeSigningConfig(CreateCodeSigningConfigRequest createCodeSigningConfigRequest); /** *

* Creates a mapping between an event source and an Lambda function. Lambda reads items from the event source and * invokes the function. *

*

* For details about how to configure different event sources, see the following topics. *

* *

* The following error handling options are available only for stream sources (DynamoDB and Kinesis): *

*
    *
  • *

    * BisectBatchOnFunctionError – If the function returns an error, split the batch in two and retry. *

    *
  • *
  • *

    * DestinationConfig – Send discarded records to an Amazon SQS queue or Amazon SNS topic. *

    *
  • *
  • *

    * MaximumRecordAgeInSeconds – Discard records older than the specified age. The default value is * infinite (-1). When set to infinite (-1), failed records are retried until the record expires *

    *
  • *
  • *

    * MaximumRetryAttempts – Discard records after the specified number of retries. The default value is * infinite (-1). When set to infinite (-1), failed records are retried until the record expires. *

    *
  • *
  • *

    * ParallelizationFactor – Process multiple batches from each shard concurrently. *

    *
  • *
*

* For information about which configuration parameters apply to each event source, see the following topics. *

* * * @param createEventSourceMappingRequest * @return Result of the CreateEventSourceMapping operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @sample AWSLambda.CreateEventSourceMapping * @see AWS API Documentation */ CreateEventSourceMappingResult createEventSourceMapping(CreateEventSourceMappingRequest createEventSourceMappingRequest); /** *

* Creates a Lambda function. To create a function, you need a deployment package and an * execution role. The deployment package is a .zip file archive or container image that contains your function * code. The execution role grants the function permission to use Amazon Web Services, such as Amazon CloudWatch * Logs for log streaming and X-Ray for request tracing. *

*

* If the deployment package is a container image, then you set the * package type to Image. For a container image, the code property must include the URI of a container * image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. *

*

* If the deployment package is a .zip * file archive, then you set the package type to Zip. For a .zip file archive, the code property * specifies the location of the .zip file. You must also specify the handler and runtime properties. The code in * the deployment package must be compatible with the target instruction set architecture of the function ( * x86-64 or arm64). If you do not specify the architecture, then the default value is * x86-64. *

*

* When you create a function, Lambda provisions an instance of the function and its supporting resources. If your * function connects to a VPC, this process can take a minute or so. During this time, you can't invoke or modify * the function. The State, StateReason, and StateReasonCode fields in the * response from GetFunctionConfiguration indicate when the function is ready to invoke. For more * information, see Lambda function * states. *

*

* A function has an unpublished version, and can have published versions and aliases. The unpublished version * changes when you update your function's code and configuration. A published version is a snapshot of your * function code and configuration that can't be changed. An alias is a named resource that maps to a version, and * can be changed to map to a different version. Use the Publish parameter to create version * 1 of your function from its initial configuration. *

*

* The other parameters let you configure version-specific and function-level settings. You can modify * version-specific settings later with UpdateFunctionConfiguration. Function-level settings apply to both * the unpublished and published versions of the function, and include tags (TagResource) and per-function * concurrency limits (PutFunctionConcurrency). *

*

* You can use code signing if your deployment package is a .zip file archive. To enable code signing for this * function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with * UpdateFunctionCode, Lambda checks that the code package has a valid signature from a trusted publisher. * The code-signing configuration includes set of signing profiles, which define the trusted publishers for this * function. *

*

* If another Amazon Web Services account or an Amazon Web Service invokes your function, use AddPermission * to grant permission by creating a resource-based Identity and Access Management (IAM) policy. You can grant * permissions at the function level, on a version, or on an alias. *

*

* To invoke your function directly, use Invoke. To invoke your function in response to events in other * Amazon Web Services, create an event source mapping (CreateEventSourceMapping), or configure a function * trigger in the other service. For more information, see Invoking Lambda functions. *

* * @param createFunctionRequest * @return Result of the CreateFunction operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws CodeStorageExceededException * Your Amazon Web Services account has exceeded its maximum total code size. For more information, see Lambda quotas. * @throws CodeVerificationFailedException * The code signature failed one or more of the validation checks for signature mismatch or expiry, and the * code signing policy is set to ENFORCE. Lambda blocks the deployment. * @throws InvalidCodeSignatureException * The code signature failed the integrity check. If the integrity check fails, then Lambda blocks * deployment, even if the code signing policy is set to WARN. * @throws CodeSigningConfigNotFoundException * The specified code signing configuration does not exist. * @sample AWSLambda.CreateFunction * @see AWS API * Documentation */ CreateFunctionResult createFunction(CreateFunctionRequest createFunctionRequest); /** *

* Creates a Lambda function URL with the specified configuration parameters. A function URL is a dedicated HTTP(S) * endpoint that you can use to invoke your function. *

* * @param createFunctionUrlConfigRequest * @return Result of the CreateFunctionUrlConfig operation returned by the service. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ServiceException * The Lambda service encountered an internal error. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.CreateFunctionUrlConfig * @see AWS * API Documentation */ CreateFunctionUrlConfigResult createFunctionUrlConfig(CreateFunctionUrlConfigRequest createFunctionUrlConfigRequest); /** *

* Deletes a Lambda function alias. *

* * @param deleteAliasRequest * @return Result of the DeleteAlias operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.DeleteAlias * @see AWS API * Documentation */ DeleteAliasResult deleteAlias(DeleteAliasRequest deleteAliasRequest); /** *

* Deletes the code signing configuration. You can delete the code signing configuration only if no function is * using it. *

* * @param deleteCodeSigningConfigRequest * @return Result of the DeleteCodeSigningConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.DeleteCodeSigningConfig * @see AWS * API Documentation */ DeleteCodeSigningConfigResult deleteCodeSigningConfig(DeleteCodeSigningConfigRequest deleteCodeSigningConfigRequest); /** *

* Deletes an event source * mapping. You can get the identifier of a mapping from the output of ListEventSourceMappings. *

*

* When you delete an event source mapping, it enters a Deleting state and might not be completely * deleted for several seconds. *

* * @param deleteEventSourceMappingRequest * @return Result of the DeleteEventSourceMapping operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws ResourceInUseException * The operation conflicts with the resource's availability. For example, you tried to update an event * source mapping in the CREATING state, or you tried to delete an event source mapping currently UPDATING. * @sample AWSLambda.DeleteEventSourceMapping * @see AWS API Documentation */ DeleteEventSourceMappingResult deleteEventSourceMapping(DeleteEventSourceMappingRequest deleteEventSourceMappingRequest); /** *

* Deletes a Lambda function. To delete a specific function version, use the Qualifier parameter. * Otherwise, all versions and aliases are deleted. This doesn't require the user to have explicit permissions for * DeleteAlias. *

*

* To delete Lambda event source mappings that invoke a function, use DeleteEventSourceMapping. For Amazon * Web Services and resources that invoke your function directly, delete the trigger in the service where you * originally configured it. *

* * @param deleteFunctionRequest * @return Result of the DeleteFunction operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.DeleteFunction * @see AWS API * Documentation */ DeleteFunctionResult deleteFunction(DeleteFunctionRequest deleteFunctionRequest); /** *

* Removes the code signing configuration from the function. *

* * @param deleteFunctionCodeSigningConfigRequest * @return Result of the DeleteFunctionCodeSigningConfig operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws CodeSigningConfigNotFoundException * The specified code signing configuration does not exist. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ServiceException * The Lambda service encountered an internal error. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.DeleteFunctionCodeSigningConfig * @see AWS API Documentation */ DeleteFunctionCodeSigningConfigResult deleteFunctionCodeSigningConfig(DeleteFunctionCodeSigningConfigRequest deleteFunctionCodeSigningConfigRequest); /** *

* Removes a concurrent execution limit from a function. *

* * @param deleteFunctionConcurrencyRequest * @return Result of the DeleteFunctionConcurrency operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.DeleteFunctionConcurrency * @see AWS API Documentation */ DeleteFunctionConcurrencyResult deleteFunctionConcurrency(DeleteFunctionConcurrencyRequest deleteFunctionConcurrencyRequest); /** *

* Deletes the configuration for asynchronous invocation for a function, version, or alias. *

*

* To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig. *

* * @param deleteFunctionEventInvokeConfigRequest * @return Result of the DeleteFunctionEventInvokeConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.DeleteFunctionEventInvokeConfig * @see AWS API Documentation */ DeleteFunctionEventInvokeConfigResult deleteFunctionEventInvokeConfig(DeleteFunctionEventInvokeConfigRequest deleteFunctionEventInvokeConfigRequest); /** *

* Deletes a Lambda function URL. When you delete a function URL, you can't recover it. Creating a new function URL * results in a different URL address. *

* * @param deleteFunctionUrlConfigRequest * @return Result of the DeleteFunctionUrlConfig operation returned by the service. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ServiceException * The Lambda service encountered an internal error. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.DeleteFunctionUrlConfig * @see AWS * API Documentation */ DeleteFunctionUrlConfigResult deleteFunctionUrlConfig(DeleteFunctionUrlConfigRequest deleteFunctionUrlConfigRequest); /** *

* Deletes a version of an Lambda * layer. Deleted versions can no longer be viewed or added to functions. To avoid breaking functions, a copy of * the version remains in Lambda until no functions refer to it. *

* * @param deleteLayerVersionRequest * @return Result of the DeleteLayerVersion operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.DeleteLayerVersion * @see AWS API * Documentation */ DeleteLayerVersionResult deleteLayerVersion(DeleteLayerVersionRequest deleteLayerVersionRequest); /** *

* Deletes the provisioned concurrency configuration for a function. *

* * @param deleteProvisionedConcurrencyConfigRequest * @return Result of the DeleteProvisionedConcurrencyConfig operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ServiceException * The Lambda service encountered an internal error. * @sample AWSLambda.DeleteProvisionedConcurrencyConfig * @see AWS API Documentation */ DeleteProvisionedConcurrencyConfigResult deleteProvisionedConcurrencyConfig( DeleteProvisionedConcurrencyConfigRequest deleteProvisionedConcurrencyConfigRequest); /** *

* Retrieves details about your account's limits and usage in an Amazon Web Services * Region. *

* * @param getAccountSettingsRequest * @return Result of the GetAccountSettings operation returned by the service. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ServiceException * The Lambda service encountered an internal error. * @sample AWSLambda.GetAccountSettings * @see AWS API * Documentation */ GetAccountSettingsResult getAccountSettings(GetAccountSettingsRequest getAccountSettingsRequest); /** *

* Returns details about a Lambda function alias. *

* * @param getAliasRequest * @return Result of the GetAlias operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.GetAlias * @see AWS API * Documentation */ GetAliasResult getAlias(GetAliasRequest getAliasRequest); /** *

* Returns information about the specified code signing configuration. *

* * @param getCodeSigningConfigRequest * @return Result of the GetCodeSigningConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @sample AWSLambda.GetCodeSigningConfig * @see AWS * API Documentation */ GetCodeSigningConfigResult getCodeSigningConfig(GetCodeSigningConfigRequest getCodeSigningConfigRequest); /** *

* Returns details about an event source mapping. You can get the identifier of a mapping from the output of * ListEventSourceMappings. *

* * @param getEventSourceMappingRequest * @return Result of the GetEventSourceMapping operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.GetEventSourceMapping * @see AWS * API Documentation */ GetEventSourceMappingResult getEventSourceMapping(GetEventSourceMappingRequest getEventSourceMappingRequest); /** *

* Returns information about the function or function version, with a link to download the deployment package that's * valid for 10 minutes. If you specify a function version, only details that are specific to that version are * returned. *

* * @param getFunctionRequest * @return Result of the GetFunction operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @sample AWSLambda.GetFunction * @see AWS API * Documentation */ GetFunctionResult getFunction(GetFunctionRequest getFunctionRequest); /** *

* Returns the code signing configuration for the specified function. *

* * @param getFunctionCodeSigningConfigRequest * @return Result of the GetFunctionCodeSigningConfig operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ServiceException * The Lambda service encountered an internal error. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.GetFunctionCodeSigningConfig * @see AWS API Documentation */ GetFunctionCodeSigningConfigResult getFunctionCodeSigningConfig(GetFunctionCodeSigningConfigRequest getFunctionCodeSigningConfigRequest); /** *

* Returns details about the reserved concurrency configuration for a function. To set a concurrency limit for a * function, use PutFunctionConcurrency. *

* * @param getFunctionConcurrencyRequest * @return Result of the GetFunctionConcurrency operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ServiceException * The Lambda service encountered an internal error. * @sample AWSLambda.GetFunctionConcurrency * @see AWS * API Documentation */ GetFunctionConcurrencyResult getFunctionConcurrency(GetFunctionConcurrencyRequest getFunctionConcurrencyRequest); /** *

* Returns the version-specific settings of a Lambda function or version. The output includes only options that can * vary between versions of a function. To modify these settings, use UpdateFunctionConfiguration. *

*

* To get all of a function's details, including function-level settings, use GetFunction. *

* * @param getFunctionConfigurationRequest * @return Result of the GetFunctionConfiguration operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @sample AWSLambda.GetFunctionConfiguration * @see AWS API Documentation */ GetFunctionConfigurationResult getFunctionConfiguration(GetFunctionConfigurationRequest getFunctionConfigurationRequest); /** *

* Retrieves the configuration for asynchronous invocation for a function, version, or alias. *

*

* To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig. *

* * @param getFunctionEventInvokeConfigRequest * @return Result of the GetFunctionEventInvokeConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.GetFunctionEventInvokeConfig * @see AWS API Documentation */ GetFunctionEventInvokeConfigResult getFunctionEventInvokeConfig(GetFunctionEventInvokeConfigRequest getFunctionEventInvokeConfigRequest); /** *

* Returns details about a Lambda function URL. *

* * @param getFunctionUrlConfigRequest * @return Result of the GetFunctionUrlConfig operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.GetFunctionUrlConfig * @see AWS * API Documentation */ GetFunctionUrlConfigResult getFunctionUrlConfig(GetFunctionUrlConfigRequest getFunctionUrlConfigRequest); /** *

* Returns information about a version of an Lambda layer, with a link to * download the layer archive that's valid for 10 minutes. *

* * @param getLayerVersionRequest * @return Result of the GetLayerVersion operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @sample AWSLambda.GetLayerVersion * @see AWS API * Documentation */ GetLayerVersionResult getLayerVersion(GetLayerVersionRequest getLayerVersionRequest); /** *

* Returns information about a version of an Lambda layer, with a link to * download the layer archive that's valid for 10 minutes. *

* * @param getLayerVersionByArnRequest * @return Result of the GetLayerVersionByArn operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @sample AWSLambda.GetLayerVersionByArn * @see AWS * API Documentation */ GetLayerVersionByArnResult getLayerVersionByArn(GetLayerVersionByArnRequest getLayerVersionByArnRequest); /** *

* Returns the permission policy for a version of an Lambda layer. For more * information, see AddLayerVersionPermission. *

* * @param getLayerVersionPolicyRequest * @return Result of the GetLayerVersionPolicy operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @sample AWSLambda.GetLayerVersionPolicy * @see AWS * API Documentation */ GetLayerVersionPolicyResult getLayerVersionPolicy(GetLayerVersionPolicyRequest getLayerVersionPolicyRequest); /** *

* Returns the resource-based IAM * policy for a function, version, or alias. *

* * @param getPolicyRequest * @return Result of the GetPolicy operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @sample AWSLambda.GetPolicy * @see AWS API * Documentation */ GetPolicyResult getPolicy(GetPolicyRequest getPolicyRequest); /** *

* Retrieves the provisioned concurrency configuration for a function's alias or version. *

* * @param getProvisionedConcurrencyConfigRequest * @return Result of the GetProvisionedConcurrencyConfig operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ProvisionedConcurrencyConfigNotFoundException * The specified configuration does not exist. * @sample AWSLambda.GetProvisionedConcurrencyConfig * @see AWS API Documentation */ GetProvisionedConcurrencyConfigResult getProvisionedConcurrencyConfig(GetProvisionedConcurrencyConfigRequest getProvisionedConcurrencyConfigRequest); /** *

* Retrieves the runtime management configuration for a function's version. If the runtime update mode is * Manual, this includes the ARN of the runtime version and the runtime update mode. If the runtime update * mode is Auto or Function update, this includes the runtime update mode and null is * returned for the ARN. For more information, see Runtime updates. *

* * @param getRuntimeManagementConfigRequest * @return Result of the GetRuntimeManagementConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.GetRuntimeManagementConfig * @see AWS API Documentation */ GetRuntimeManagementConfigResult getRuntimeManagementConfig(GetRuntimeManagementConfigRequest getRuntimeManagementConfigRequest); /** *

* Invokes a Lambda function. You can invoke a function synchronously (and wait for the response), or * asynchronously. By default, Lambda invokes your function synchronously (i.e. theInvocationType is * RequestResponse). To invoke a function asynchronously, set InvocationType to * Event. Lambda passes the ClientContext object to your function for synchronous * invocations only. *

*

* For synchronous invocation, * details about the function response, including errors, are included in the response body and headers. For either * invocation type, you can find more information in the execution log and trace. *

*

* When an error occurs, your function may be invoked multiple times. Retry behavior varies by error type, client, * event source, and invocation type. For example, if you invoke a function asynchronously and it returns an error, * Lambda executes the function up to two more times. For more information, see Error handling and automatic retries * in Lambda. *

*

* For asynchronous invocation, * Lambda adds events to a queue before sending them to your function. If your function does not have enough * capacity to keep up with the queue, events may be lost. Occasionally, your function may receive the same event * multiple times, even if no error occurs. To retain events that were not processed, configure your function with a * dead-letter * queue. *

*

* The status code in the API response doesn't reflect function errors. Error codes are reserved for errors that * prevent your function from executing, such as permissions errors, quota errors, or issues with * your function's code and configuration. For example, Lambda returns TooManyRequestsException if * running the function would cause you to exceed a concurrency limit at either the account level ( * ConcurrentInvocationLimitExceeded) or function level ( * ReservedFunctionConcurrentInvocationLimitExceeded). *

*

* For functions with a long timeout, your client might disconnect during synchronous invocation while it waits for * a response. Configure your HTTP client, SDK, firewall, proxy, or operating system to allow for long connections * with timeout or keep-alive settings. *

*

* This operation requires permission for the lambda:InvokeFunction action. For * details on how to set up permissions for cross-account invocations, see Granting function access to other accounts. *

* * @param invokeRequest * @return Result of the Invoke operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidRequestContentException * The request body could not be parsed as JSON. * @throws RequestTooLargeException * The request payload exceeded the Invoke request body JSON input quota. For more information, * see Lambda quotas. * @throws UnsupportedMediaTypeException * The content type of the Invoke request body is not JSON. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws EC2UnexpectedException * Lambda received an unexpected Amazon EC2 client exception while setting up for the Lambda function. * @throws SubnetIPAddressLimitReachedException * Lambda couldn't set up VPC access for the Lambda function because one or more configured subnets has no * available IP addresses. * @throws ENILimitReachedException * Lambda couldn't create an elastic network interface in the VPC, specified as part of Lambda function * configuration, because the limit for network interfaces has been reached. For more information, see Lambda quotas. * @throws EFSMountConnectivityException * The Lambda function couldn't make a network connection to the configured file system. * @throws EFSMountFailureException * The Lambda function couldn't mount the configured file system due to a permission or configuration issue. * @throws EFSMountTimeoutException * The Lambda function made a network connection to the configured file system, but the mount operation * timed out. * @throws EFSIOException * An error occurred when reading from or writing to a connected file system. * @throws SnapStartException * The afterRestore() runtime hook * encountered an error. For more information, check the Amazon CloudWatch logs. * @throws SnapStartTimeoutException * Lambda couldn't restore the snapshot within the timeout limit. * @throws SnapStartNotReadyException * Lambda is initializing your function. You can invoke the function when the function state becomes * Active. * @throws EC2ThrottledException * Amazon EC2 throttled Lambda during Lambda function initialization using the execution role provided for * the function. * @throws EC2AccessDeniedException * Need additional permissions to configure VPC settings. * @throws InvalidSubnetIDException * The subnet ID provided in the Lambda function VPC configuration is not valid. * @throws InvalidSecurityGroupIDException * The security group ID provided in the Lambda function VPC configuration is not valid. * @throws InvalidZipFileException * Lambda could not unzip the deployment package. * @throws KMSDisabledException * Lambda couldn't decrypt the environment variables because the KMS key used is disabled. Check the Lambda * function's KMS key settings. * @throws KMSInvalidStateException * Lambda couldn't decrypt the environment variables because the state of the KMS key used is not valid for * Decrypt. Check the function's KMS key settings. * @throws KMSAccessDeniedException * Lambda couldn't decrypt the environment variables because KMS access was denied. Check the Lambda * function's KMS permissions. * @throws KMSNotFoundException * Lambda couldn't decrypt the environment variables because the KMS key was not found. Check the function's * KMS key settings. * @throws InvalidRuntimeException * The runtime or runtime version specified is not supported. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws ResourceNotReadyException * The function is inactive and its VPC connection is no longer available. Wait for the VPC connection to * reestablish and try again. * @throws RecursiveInvocationException * Lambda has detected your function being invoked in a recursive loop with other Amazon Web Services * resources and stopped your function's invocation. * @sample AWSLambda.Invoke * @see AWS API * Documentation */ InvokeResult invoke(InvokeRequest invokeRequest); /** * *

* For asynchronous function invocation, use Invoke. *

*
*

* Invokes a function asynchronously. *

* *

* If you do use the InvokeAsync action, note that it doesn't support the use of X-Ray active tracing. Trace ID is * not propagated to the function, even if X-Ray active tracing is turned on. *

*
* * @param invokeAsyncRequest * @return Result of the InvokeAsync operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidRequestContentException * The request body could not be parsed as JSON. * @throws InvalidRuntimeException * The runtime or runtime version specified is not supported. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.InvokeAsync * @see AWS API * Documentation */ @Deprecated InvokeAsyncResult invokeAsync(InvokeAsyncRequest invokeAsyncRequest); /** *

* Returns a list of aliases * for a Lambda function. *

* * @param listAliasesRequest * @return Result of the ListAliases operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.ListAliases * @see AWS API * Documentation */ ListAliasesResult listAliases(ListAliasesRequest listAliasesRequest); /** *

* Returns a list of code * signing configurations. A request returns up to 10,000 configurations per call. You can use the * MaxItems parameter to return fewer configurations per call. *

* * @param listCodeSigningConfigsRequest * @return Result of the ListCodeSigningConfigs operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @sample AWSLambda.ListCodeSigningConfigs * @see AWS * API Documentation */ ListCodeSigningConfigsResult listCodeSigningConfigs(ListCodeSigningConfigsRequest listCodeSigningConfigsRequest); /** *

* Lists event source mappings. Specify an EventSourceArn to show only event source mappings for a * single event source. *

* * @param listEventSourceMappingsRequest * @return Result of the ListEventSourceMappings operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.ListEventSourceMappings * @see AWS * API Documentation */ ListEventSourceMappingsResult listEventSourceMappings(ListEventSourceMappingsRequest listEventSourceMappingsRequest); /** * Simplified method form for invoking the ListEventSourceMappings operation. * * @see #listEventSourceMappings(ListEventSourceMappingsRequest) */ ListEventSourceMappingsResult listEventSourceMappings(); /** *

* Retrieves a list of configurations for asynchronous invocation for a function. *

*

* To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig. *

* * @param listFunctionEventInvokeConfigsRequest * @return Result of the ListFunctionEventInvokeConfigs operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ServiceException * The Lambda service encountered an internal error. * @sample AWSLambda.ListFunctionEventInvokeConfigs * @see AWS API Documentation */ ListFunctionEventInvokeConfigsResult listFunctionEventInvokeConfigs(ListFunctionEventInvokeConfigsRequest listFunctionEventInvokeConfigsRequest); /** *

* Returns a list of Lambda function URLs for the specified function. *

* * @param listFunctionUrlConfigsRequest * @return Result of the ListFunctionUrlConfigs operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.ListFunctionUrlConfigs * @see AWS * API Documentation */ ListFunctionUrlConfigsResult listFunctionUrlConfigs(ListFunctionUrlConfigsRequest listFunctionUrlConfigsRequest); /** *

* Returns a list of Lambda functions, with the version-specific configuration of each. Lambda returns up to 50 * functions per call. *

*

* Set FunctionVersion to ALL to include all published versions of each function in * addition to the unpublished version. *

* *

* The ListFunctions operation returns a subset of the FunctionConfiguration fields. To get the * additional fields (State, StateReasonCode, StateReason, LastUpdateStatus, LastUpdateStatusReason, * LastUpdateStatusReasonCode, RuntimeVersionConfig) for a function or version, use GetFunction. *

*
* * @param listFunctionsRequest * @return Result of the ListFunctions operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @sample AWSLambda.ListFunctions * @see AWS API * Documentation */ ListFunctionsResult listFunctions(ListFunctionsRequest listFunctionsRequest); /** * Simplified method form for invoking the ListFunctions operation. * * @see #listFunctions(ListFunctionsRequest) */ ListFunctionsResult listFunctions(); /** *

* List the functions that use the specified code signing configuration. You can use this method prior to deleting a * code signing configuration, to verify that no functions are using it. *

* * @param listFunctionsByCodeSigningConfigRequest * @return Result of the ListFunctionsByCodeSigningConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @sample AWSLambda.ListFunctionsByCodeSigningConfig * @see AWS API Documentation */ ListFunctionsByCodeSigningConfigResult listFunctionsByCodeSigningConfig(ListFunctionsByCodeSigningConfigRequest listFunctionsByCodeSigningConfigRequest); /** *

* Lists the versions of an Lambda * layer. Versions that have been deleted aren't listed. Specify a runtime identifier to list only * versions that indicate that they're compatible with that runtime. Specify a compatible architecture to include * only layer versions that are compatible with that architecture. *

* * @param listLayerVersionsRequest * @return Result of the ListLayerVersions operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.ListLayerVersions * @see AWS API * Documentation */ ListLayerVersionsResult listLayerVersions(ListLayerVersionsRequest listLayerVersionsRequest); /** *

* Lists Lambda layers and shows * information about the latest version of each. Specify a runtime identifier to list only * layers that indicate that they're compatible with that runtime. Specify a compatible architecture to include only * layers that are compatible with that instruction set architecture. *

* * @param listLayersRequest * @return Result of the ListLayers operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.ListLayers * @see AWS API * Documentation */ ListLayersResult listLayers(ListLayersRequest listLayersRequest); /** *

* Retrieves a list of provisioned concurrency configurations for a function. *

* * @param listProvisionedConcurrencyConfigsRequest * @return Result of the ListProvisionedConcurrencyConfigs operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ServiceException * The Lambda service encountered an internal error. * @sample AWSLambda.ListProvisionedConcurrencyConfigs * @see AWS API Documentation */ ListProvisionedConcurrencyConfigsResult listProvisionedConcurrencyConfigs(ListProvisionedConcurrencyConfigsRequest listProvisionedConcurrencyConfigsRequest); /** *

* Returns a function's tags. You can also * view tags with GetFunction. *

* * @param listTagsRequest * @return Result of the ListTags operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.ListTags * @see AWS API * Documentation */ ListTagsResult listTags(ListTagsRequest listTagsRequest); /** *

* Returns a list of versions, * with the version-specific configuration of each. Lambda returns up to 50 versions per call. *

* * @param listVersionsByFunctionRequest * @return Result of the ListVersionsByFunction operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.ListVersionsByFunction * @see AWS * API Documentation */ ListVersionsByFunctionResult listVersionsByFunction(ListVersionsByFunctionRequest listVersionsByFunctionRequest); /** *

* Creates an Lambda layer from * a ZIP archive. Each time you call PublishLayerVersion with the same layer name, a new version is * created. *

*

* Add layers to your function with CreateFunction or UpdateFunctionConfiguration. *

* * @param publishLayerVersionRequest * @return Result of the PublishLayerVersion operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws CodeStorageExceededException * Your Amazon Web Services account has exceeded its maximum total code size. For more information, see Lambda quotas. * @sample AWSLambda.PublishLayerVersion * @see AWS API * Documentation */ PublishLayerVersionResult publishLayerVersion(PublishLayerVersionRequest publishLayerVersionRequest); /** *

* Creates a version from the * current code and configuration of a function. Use versions to create a snapshot of your function code and * configuration that doesn't change. *

*

* Lambda doesn't publish a version if the function's configuration and code haven't changed since the last version. * Use UpdateFunctionCode or UpdateFunctionConfiguration to update the function before publishing a * version. *

*

* Clients can invoke versions directly or with an alias. To create an alias, use CreateAlias. *

* * @param publishVersionRequest * @return Result of the PublishVersion operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws CodeStorageExceededException * Your Amazon Web Services account has exceeded its maximum total code size. For more information, see Lambda quotas. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.PublishVersion * @see AWS API * Documentation */ PublishVersionResult publishVersion(PublishVersionRequest publishVersionRequest); /** *

* Update the code signing configuration for the function. Changes to the code signing configuration take effect the * next time a user tries to deploy a code package to the function. *

* * @param putFunctionCodeSigningConfigRequest * @return Result of the PutFunctionCodeSigningConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws CodeSigningConfigNotFoundException * The specified code signing configuration does not exist. * @sample AWSLambda.PutFunctionCodeSigningConfig * @see AWS API Documentation */ PutFunctionCodeSigningConfigResult putFunctionCodeSigningConfig(PutFunctionCodeSigningConfigRequest putFunctionCodeSigningConfigRequest); /** *

* Sets the maximum number of simultaneous executions for a function, and reserves capacity for that concurrency * level. *

*

* Concurrency settings apply to the function as a whole, including all published versions and the unpublished * version. Reserving concurrency both ensures that your function has capacity to process the specified number of * events simultaneously, and prevents it from scaling beyond that level. Use GetFunction to see the current * setting for a function. *

*

* Use GetAccountSettings to see your Regional concurrency limit. You can reserve concurrency for as many * functions as you like, as long as you leave at least 100 simultaneous executions unreserved for functions that * aren't configured with a per-function limit. For more information, see Lambda function scaling. *

* * @param putFunctionConcurrencyRequest * @return Result of the PutFunctionConcurrency operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.PutFunctionConcurrency * @see AWS * API Documentation */ PutFunctionConcurrencyResult putFunctionConcurrency(PutFunctionConcurrencyRequest putFunctionConcurrencyRequest); /** *

* Configures options for asynchronous * invocation on a function, version, or alias. If a configuration already exists for a function, version, or * alias, this operation overwrites it. If you exclude any settings, they are removed. To set one option without * affecting existing settings for other options, use UpdateFunctionEventInvokeConfig. *

*

* By default, Lambda retries an asynchronous invocation twice if the function returns an error. It retains events * in a queue for up to six hours. When an event fails all processing attempts or stays in the asynchronous * invocation queue for too long, Lambda discards it. To retain discarded events, configure a dead-letter queue with * UpdateFunctionConfiguration. *

*

* To send an invocation record to a queue, topic, function, or event bus, specify a destination. You can configure separate destinations for successful invocations (on-success) and events that * fail all processing attempts (on-failure). You can configure destinations in addition to or instead of a * dead-letter queue. *

* * @param putFunctionEventInvokeConfigRequest * @return Result of the PutFunctionEventInvokeConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.PutFunctionEventInvokeConfig * @see AWS API Documentation */ PutFunctionEventInvokeConfigResult putFunctionEventInvokeConfig(PutFunctionEventInvokeConfigRequest putFunctionEventInvokeConfigRequest); /** *

* Adds a provisioned concurrency configuration to a function's alias or version. *

* * @param putProvisionedConcurrencyConfigRequest * @return Result of the PutProvisionedConcurrencyConfig operation returned by the service. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ServiceException * The Lambda service encountered an internal error. * @sample AWSLambda.PutProvisionedConcurrencyConfig * @see AWS API Documentation */ PutProvisionedConcurrencyConfigResult putProvisionedConcurrencyConfig(PutProvisionedConcurrencyConfigRequest putProvisionedConcurrencyConfigRequest); /** *

* Sets the runtime management configuration for a function's version. For more information, see Runtime updates. *

* * @param putRuntimeManagementConfigRequest * @return Result of the PutRuntimeManagementConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.PutRuntimeManagementConfig * @see AWS API Documentation */ PutRuntimeManagementConfigResult putRuntimeManagementConfig(PutRuntimeManagementConfigRequest putRuntimeManagementConfigRequest); /** *

* Removes a statement from the permissions policy for a version of an Lambda layer. For more * information, see AddLayerVersionPermission. *

* * @param removeLayerVersionPermissionRequest * @return Result of the RemoveLayerVersionPermission operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @sample AWSLambda.RemoveLayerVersionPermission * @see AWS API Documentation */ RemoveLayerVersionPermissionResult removeLayerVersionPermission(RemoveLayerVersionPermissionRequest removeLayerVersionPermissionRequest); /** *

* Revokes function-use permission from an Amazon Web Service or another Amazon Web Services account. You can get * the ID of the statement from the output of GetPolicy. *

* * @param removePermissionRequest * @return Result of the RemovePermission operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @sample AWSLambda.RemovePermission * @see AWS API * Documentation */ RemovePermissionResult removePermission(RemovePermissionRequest removePermissionRequest); /** *

* Adds tags to a function. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.TagResource * @see AWS API * Documentation */ TagResourceResult tagResource(TagResourceRequest tagResourceRequest); /** *

* Removes tags from a function. *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.UntagResource * @see AWS API * Documentation */ UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest); /** *

* Updates the configuration of a Lambda function alias. *

* * @param updateAliasRequest * @return Result of the UpdateAlias operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.UpdateAlias * @see AWS API * Documentation */ UpdateAliasResult updateAlias(UpdateAliasRequest updateAliasRequest); /** *

* Update the code signing configuration. Changes to the code signing configuration take effect the next time a user * tries to deploy a code package to the function. *

* * @param updateCodeSigningConfigRequest * @return Result of the UpdateCodeSigningConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @sample AWSLambda.UpdateCodeSigningConfig * @see AWS * API Documentation */ UpdateCodeSigningConfigResult updateCodeSigningConfig(UpdateCodeSigningConfigRequest updateCodeSigningConfigRequest); /** *

* Updates an event source mapping. You can change the function that Lambda invokes, or pause invocation and resume * later from the same location. *

*

* For details about how to configure different event sources, see the following topics. *

* *

* The following error handling options are available only for stream sources (DynamoDB and Kinesis): *

*
    *
  • *

    * BisectBatchOnFunctionError – If the function returns an error, split the batch in two and retry. *

    *
  • *
  • *

    * DestinationConfig – Send discarded records to an Amazon SQS queue or Amazon SNS topic. *

    *
  • *
  • *

    * MaximumRecordAgeInSeconds – Discard records older than the specified age. The default value is * infinite (-1). When set to infinite (-1), failed records are retried until the record expires *

    *
  • *
  • *

    * MaximumRetryAttempts – Discard records after the specified number of retries. The default value is * infinite (-1). When set to infinite (-1), failed records are retried until the record expires. *

    *
  • *
  • *

    * ParallelizationFactor – Process multiple batches from each shard concurrently. *

    *
  • *
*

* For information about which configuration parameters apply to each event source, see the following topics. *

* * * @param updateEventSourceMappingRequest * @return Result of the UpdateEventSourceMapping operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws ResourceInUseException * The operation conflicts with the resource's availability. For example, you tried to update an event * source mapping in the CREATING state, or you tried to delete an event source mapping currently UPDATING. * @sample AWSLambda.UpdateEventSourceMapping * @see AWS API Documentation */ UpdateEventSourceMappingResult updateEventSourceMapping(UpdateEventSourceMappingRequest updateEventSourceMappingRequest); /** *

* Updates a Lambda function's code. If code signing is enabled for the function, the code package must be signed by * a trusted publisher. For more information, see Configuring code signing for * Lambda. *

*

* If the function's package type is Image, then you must specify the code package in * ImageUri as the URI of a container image in the Amazon ECR * registry. *

*

* If the function's package type is Zip, then you must specify the deployment package as a .zip * file archive. Enter the Amazon S3 bucket and key of the code .zip file location. You can also provide the * function code inline using the ZipFile field. *

*

* The code in the deployment package must be compatible with the target instruction set architecture of the * function (x86-64 or arm64). *

*

* The function's code is locked when you publish a version. You can't modify the code of a published version, only * the unpublished version. *

* *

* For a function defined as a container image, Lambda resolves the image tag to an image digest. In Amazon ECR, if * you update the image tag to a new image, Lambda does not automatically update the function. *

*
* * @param updateFunctionCodeRequest * @return Result of the UpdateFunctionCode operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws CodeStorageExceededException * Your Amazon Web Services account has exceeded its maximum total code size. For more information, see Lambda quotas. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws CodeVerificationFailedException * The code signature failed one or more of the validation checks for signature mismatch or expiry, and the * code signing policy is set to ENFORCE. Lambda blocks the deployment. * @throws InvalidCodeSignatureException * The code signature failed the integrity check. If the integrity check fails, then Lambda blocks * deployment, even if the code signing policy is set to WARN. * @throws CodeSigningConfigNotFoundException * The specified code signing configuration does not exist. * @sample AWSLambda.UpdateFunctionCode * @see AWS API * Documentation */ UpdateFunctionCodeResult updateFunctionCode(UpdateFunctionCodeRequest updateFunctionCodeRequest); /** *

* Modify the version-specific settings of a Lambda function. *

*

* When you update a function, Lambda provisions an instance of the function and its supporting resources. If your * function connects to a VPC, this process can take a minute. During this time, you can't modify the function, but * you can still invoke it. The LastUpdateStatus, LastUpdateStatusReason, and * LastUpdateStatusReasonCode fields in the response from GetFunctionConfiguration indicate when * the update is complete and the function is processing events with the new configuration. For more information, * see Lambda function states. *

*

* These settings can vary between versions of a function and are locked when you publish a version. You can't * modify the configuration of a published version, only the unpublished version. *

*

* To configure function concurrency, use PutFunctionConcurrency. To grant invoke permissions to an Amazon * Web Services account or Amazon Web Service, use AddPermission. *

* * @param updateFunctionConfigurationRequest * @return Result of the UpdateFunctionConfiguration operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws PreconditionFailedException * The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the * GetFunction or the GetAlias API operation to retrieve the latest RevisionId for * your resource. * @throws CodeVerificationFailedException * The code signature failed one or more of the validation checks for signature mismatch or expiry, and the * code signing policy is set to ENFORCE. Lambda blocks the deployment. * @throws InvalidCodeSignatureException * The code signature failed the integrity check. If the integrity check fails, then Lambda blocks * deployment, even if the code signing policy is set to WARN. * @throws CodeSigningConfigNotFoundException * The specified code signing configuration does not exist. * @sample AWSLambda.UpdateFunctionConfiguration * @see AWS API Documentation */ UpdateFunctionConfigurationResult updateFunctionConfiguration(UpdateFunctionConfigurationRequest updateFunctionConfigurationRequest); /** *

* Updates the configuration for asynchronous invocation for a function, version, or alias. *

*

* To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig. *

* * @param updateFunctionEventInvokeConfigRequest * @return Result of the UpdateFunctionEventInvokeConfig operation returned by the service. * @throws ServiceException * The Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @sample AWSLambda.UpdateFunctionEventInvokeConfig * @see AWS API Documentation */ UpdateFunctionEventInvokeConfigResult updateFunctionEventInvokeConfig(UpdateFunctionEventInvokeConfigRequest updateFunctionEventInvokeConfigRequest); /** *

* Updates the configuration for a Lambda function URL. *

* * @param updateFunctionUrlConfigRequest * @return Result of the UpdateFunctionUrlConfig operation returned by the service. * @throws ResourceConflictException * The resource already exists, or another operation is in progress. * @throws ResourceNotFoundException * The resource specified in the request does not exist. * @throws InvalidParameterValueException * One of the parameters in the request is not valid. * @throws ServiceException * The Lambda service encountered an internal error. * @throws TooManyRequestsException * The request throughput limit was exceeded. For more information, see Lambda * quotas. * @sample AWSLambda.UpdateFunctionUrlConfig * @see AWS * API Documentation */ UpdateFunctionUrlConfigResult updateFunctionUrlConfig(UpdateFunctionUrlConfigRequest updateFunctionUrlConfigRequest); /** * Shuts down this client object, releasing any resources that might be held open. This is an optional method, and * callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client * has been shutdown, it should not be used to make any more requests. */ void shutdown(); /** * Returns additional metadata for a previously executed successful request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing a request. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none is available. */ ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); AWSLambdaWaiters waiters(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy