PublishLayerVersion
Creates an Amazon 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.
- LayerName
-
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.
- CompatibleArchitectures
-
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
- CompatibleRuntimes
-
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 | python3.11 | nodejs20.x | provided.al2023 | python3.12 | java21 | python3.13 | nodejs22.x
Required: No
- Content
-
The function layer archive.
Type: LayerVersionContentInput object
Required: Yes
- Description
-
The description of the version.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
Required: No
- LicenseInfo
-
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.
- CompatibleArchitectures
-
A list of compatible instruction set architectures.
Type: Array of strings
Array Members: Maximum number of 2 items.
Valid Values:
x86_64 | arm64
- CompatibleRuntimes
-
The layer's compatible runtimes.
The following list includes deprecated runtimes. For more information, see Runtime use after deprecation.
For a list of all currently supported runtimes, see Supported 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 | python3.11 | nodejs20.x | provided.al2023 | python3.12 | java21 | python3.13 | nodejs22.x
- Content
-
Details about the layer version.
Type: LayerVersionContentOutput object
- CreatedDate
-
The date that the layer version was created, in ISO-8601 format
(YYYY-MM-DDThh:mm:ss.sTZD). Type: String
- Description
-
The description of the version.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
- LayerArn
-
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-_]+
- LayerVersionArn
-
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]+
- LicenseInfo
-
The layer's software license.
Type: String
Length Constraints: Maximum length of 512.
- Version
-
The version number.
Type: Long
Errors
For information about the errors that are common to all actions, see Common Errors.
- CodeStorageExceededException
-
Your Amazon Web Services 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 Amazon 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 Amazon SDKs, see the following: