PublishLayerVersion - AWS Lambda (original) (raw)
Creates an AWS 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.
Request Syntax
POST /2018-10-31/layers/LayerName/versions HTTP/1.1
Content-type: application/json
{
"CompatibleArchitectures": [ "string" ],
"CompatibleRuntimes": [ "string" ],
"Content": {
"S3Bucket": "string",
"S3Key": "string",
"S3ObjectVersion": "string",
"ZipFile": blob
},
"Description": "string",
"LicenseInfo": "string"
}
URI Request Parameters
The request uses the following URI parameters.
The name or Amazon Resource Name (ARN) of the layer.
Length Constraints: Minimum length of 1. Maximum length of 140.
Pattern: (arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+)|[a-zA-Z0-9-_]+
Required: Yes
Request Body
The request accepts the following data in JSON format.
A list of compatible instruction set architectures.
Type: Array of strings
Array Members: Maximum number of 2 items.
Valid Values: x86_64 | arm64
Required: No
A list of compatible function runtimes. Used for filtering with ListLayers and ListLayerVersions.
The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.
Type: Array of strings
Array Members: Maximum number of 15 items.
Valid Values: nodejs | nodejs4.3 | nodejs6.10 | nodejs8.10 | nodejs10.x | nodejs12.x | nodejs14.x | nodejs16.x | java8 | java8.al2 | java11 | python2.7 | python3.6 | python3.7 | python3.8 | python3.9 | dotnetcore1.0 | dotnetcore2.0 | dotnetcore2.1 | dotnetcore3.1 | dotnet6 | dotnet8 | nodejs4.3-edge | go1.x | ruby2.5 | ruby2.7 | provided | provided.al2 | nodejs18.x | python3.10 | java17 | ruby3.2 | ruby3.3 | ruby3.4 | python3.11 | nodejs20.x | provided.al2023 | python3.12 | java21 | python3.13 | nodejs22.x
Required: No
The function layer archive.
Type: LayerVersionContentInput object
Required: Yes
The description of the version.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
Required: No
The layer's software license. It can be any of the following:
- An SPDX license identifier. For example,
MIT
. - The URL of a license hosted on the internet. For example,
https://opensource.org/licenses/MIT
. - The full text of the license.
Type: String
Length Constraints: Maximum length of 512.
Required: No
Response Syntax
HTTP/1.1 201
Content-type: application/json
{
"CompatibleArchitectures": [ "string" ],
"CompatibleRuntimes": [ "string" ],
"Content": {
"CodeSha256": "string",
"CodeSize": number,
"Location": "string",
"SigningJobArn": "string",
"SigningProfileVersionArn": "string"
},
"CreatedDate": "string",
"Description": "string",
"LayerArn": "string",
"LayerVersionArn": "string",
"LicenseInfo": "string",
"Version": number
}
Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in JSON format by the service.
A list of compatible instruction set architectures.
Type: Array of strings
Array Members: Maximum number of 2 items.
Valid Values: x86_64 | arm64
The layer's compatible runtimes.
The following list includes deprecated runtimes. For more information, seeRuntime use after deprecation.
For a list of all currently supported runtimes, seeSupported runtimes.
Type: Array of strings
Array Members: Maximum number of 15 items.
Valid Values: nodejs | nodejs4.3 | nodejs6.10 | nodejs8.10 | nodejs10.x | nodejs12.x | nodejs14.x | nodejs16.x | java8 | java8.al2 | java11 | python2.7 | python3.6 | python3.7 | python3.8 | python3.9 | dotnetcore1.0 | dotnetcore2.0 | dotnetcore2.1 | dotnetcore3.1 | dotnet6 | dotnet8 | nodejs4.3-edge | go1.x | ruby2.5 | ruby2.7 | provided | provided.al2 | nodejs18.x | python3.10 | java17 | ruby3.2 | ruby3.3 | ruby3.4 | python3.11 | nodejs20.x | provided.al2023 | python3.12 | java21 | python3.13 | nodejs22.x
Details about the layer version.
Type: LayerVersionContentOutput object
The date that the layer version was created, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).
Type: String
The description of the version.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
The ARN of the layer.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 140.
Pattern: arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+
The ARN of the layer version.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 140.
Pattern: arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+:[0-9]+
The layer's software license.
Type: String
Length Constraints: Maximum length of 512.
The version number.
Type: Long
Errors
For information about the errors that are common to all actions, see Common Errors.
CodeStorageExceededException
Your AWS account has exceeded its maximum total code size. For more information, see Lambda quotas.
HTTP Status Code: 400
InvalidParameterValueException
One of the parameters in the request is not valid.
HTTP Status Code: 400
ResourceNotFoundException
The resource specified in the request does not exist.
HTTP Status Code: 404
ServiceException
The AWS Lambda service encountered an internal error.
HTTP Status Code: 500
TooManyRequestsException
The request throughput limit was exceeded. For more information, see Lambda quotas.
HTTP Status Code: 429
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: