AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

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.

Note:

For .NET Core this operation is only available in asynchronous form. Please refer to UpdateFunctionCodeAsync.

Namespace: Amazon.Lambda
Assembly: AWSSDK.Lambda.dll
Version: 3.x.y.z

Syntax

C#
public abstract UpdateFunctionCodeResponse UpdateFunctionCode(
         UpdateFunctionCodeRequest request
)

Parameters

request
Type: Amazon.Lambda.Model.UpdateFunctionCodeRequest

Container for the necessary parameters to execute the UpdateFunctionCode service method.

Return Value


The response from the UpdateFunctionCode service method, as returned by Lambda.

Exceptions

ExceptionCondition
CodeSigningConfigNotFoundException The specified code signing configuration does not exist.
CodeStorageExceededException Your Amazon Web Services account has exceeded its maximum total code size. For more information, see Lambda quotas.
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.
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.
InvalidParameterValueException One of the parameters in the request is not valid.
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.
ResourceConflictException The resource already exists, or another operation is in progress.
ResourceNotFoundException The resource specified in the request does not exist.
ServiceException The Lambda service encountered an internal error.
TooManyRequestsException The request throughput limit was exceeded. For more information, see Lambda quotas.

Examples

The following example replaces the code of the unpublished ($LATEST) version of a function named my-function with the contents of the specified zip file in Amazon S3.

To update a Lambda function's code


var response = client.UpdateFunctionCode(new UpdateFunctionCodeRequest 
{
    FunctionName = "my-function",
    S3Bucket = "my-bucket-1xpuxmplzrlbh",
    S3Key = "function.zip"
});

string codeSha256 = response.CodeSha256;
long codeSize = response.CodeSize;
string description = response.Description;
string functionArn = response.FunctionArn;
string functionName = response.FunctionName;
string handler = response.Handler;
string lastModified = response.LastModified;
int memorySize = response.MemorySize;
string revisionId = response.RevisionId;
string role = response.Role;
string runtime = response.Runtime;
int timeout = response.Timeout;
TracingConfigResponse tracingConfig = response.TracingConfig;
string version = response.Version;

            

Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

See Also