2026/05/05 - Amazon CloudFront - 2 updated api methods
Changes Adds support for tagging CloudFront Functions and KeyValueStores resources.
{'Tags': {'Items': [{'Key': 'string', 'Value': 'string'}]}}
Creates a CloudFront function.
To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function.
When you create a function, it's in the DEVELOPMENT stage. In this stage, you can test the function with TestFunction, and update it with UpdateFunction.
When you're ready to use your function with a CloudFront distribution, use PublishFunction to copy the function from the DEVELOPMENT stage to LIVE. When it's live, you can attach the function to a distribution's cache behavior, using the function's ARN.
See also: AWS API Documentation
Request Syntax
client.create_function(
Name='string',
FunctionConfig={
'Comment': 'string',
'Runtime': 'cloudfront-js-1.0'|'cloudfront-js-2.0',
'KeyValueStoreAssociations': {
'Quantity': 123,
'Items': [
{
'KeyValueStoreARN': 'string'
},
]
}
},
FunctionCode=b'bytes',
Tags={
'Items': [
{
'Key': 'string',
'Value': 'string'
},
]
}
)
string
[REQUIRED]
A name to identify the function.
dict
[REQUIRED]
Configuration information about the function, including an optional comment and the function's runtime.
Comment (string) -- [REQUIRED]
A comment to describe the function.
Runtime (string) -- [REQUIRED]
The function's runtime environment version.
KeyValueStoreAssociations (dict) --
The configuration for the key value store associations.
Quantity (integer) -- [REQUIRED]
The quantity of key value store associations.
Items (list) --
The items of the key value store association.
(dict) --
The key value store association.
KeyValueStoreARN (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the key value store association.
bytes
[REQUIRED]
The function code. For more information about writing a CloudFront function, see Writing function code for CloudFront Functions in the Amazon CloudFront Developer Guide.
dict
A complex type that contains zero or more Tag elements.
Items (list) --
A complex type that contains Tag elements.
(dict) --
A complex type that contains Tag key and Tag value.
Key (string) -- [REQUIRED]
A string that contains Tag key.
The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
Value (string) --
A string that contains an optional Tag value.
The string length should be between 0 and 256 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
dict
Response Syntax
{
'FunctionSummary': {
'Name': 'string',
'Status': 'string',
'FunctionConfig': {
'Comment': 'string',
'Runtime': 'cloudfront-js-1.0'|'cloudfront-js-2.0',
'KeyValueStoreAssociations': {
'Quantity': 123,
'Items': [
{
'KeyValueStoreARN': 'string'
},
]
}
},
'FunctionMetadata': {
'FunctionARN': 'string',
'Stage': 'DEVELOPMENT'|'LIVE',
'CreatedTime': datetime(2015, 1, 1),
'LastModifiedTime': datetime(2015, 1, 1)
}
},
'Location': 'string',
'ETag': 'string'
}
Response Structure
(dict) --
FunctionSummary (dict) --
Contains configuration information and metadata about a CloudFront function.
Name (string) --
The name of the CloudFront function.
Status (string) --
The status of the CloudFront function.
FunctionConfig (dict) --
Contains configuration information about a CloudFront function.
Comment (string) --
A comment to describe the function.
Runtime (string) --
The function's runtime environment version.
KeyValueStoreAssociations (dict) --
The configuration for the key value store associations.
Quantity (integer) --
The quantity of key value store associations.
Items (list) --
The items of the key value store association.
(dict) --
The key value store association.
KeyValueStoreARN (string) --
The Amazon Resource Name (ARN) of the key value store association.
FunctionMetadata (dict) --
Contains metadata about a CloudFront function.
FunctionARN (string) --
The Amazon Resource Name (ARN) of the function. The ARN uniquely identifies the function.
Stage (string) --
The stage that the function is in, either DEVELOPMENT or LIVE.
When a function is in the DEVELOPMENT stage, you can test the function with TestFunction, and update it with UpdateFunction.
When a function is in the LIVE stage, you can attach the function to a distribution's cache behavior, using the function's ARN.
CreatedTime (datetime) --
The date and time when the function was created.
LastModifiedTime (datetime) --
The date and time when the function was most recently updated.
Location (string) --
The URL of the CloudFront function. Use the URL to manage the function with the CloudFront API.
ETag (string) --
The version identifier for the current version of the CloudFront function.
{'Tags': {'Items': [{'Key': 'string', 'Value': 'string'}]}}
Specifies the key value store resource to add to your account. In your account, the key value store names must be unique. You can also import key value store data in JSON format from an S3 bucket by providing a valid ImportSource that you own.
See also: AWS API Documentation
Request Syntax
client.create_key_value_store(
Name='string',
Comment='string',
ImportSource={
'SourceType': 'S3',
'SourceARN': 'string'
},
Tags={
'Items': [
{
'Key': 'string',
'Value': 'string'
},
]
}
)
string
[REQUIRED]
The name of the key value store. The minimum length is 1 character and the maximum length is 64 characters.
string
The comment of the key value store.
dict
The S3 bucket that provides the source for the import. The source must be in a valid JSON format.
SourceType (string) -- [REQUIRED]
The source type of the import source for the key value store.
SourceARN (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the import source for the key value store.
dict
A complex type that contains zero or more Tag elements.
Items (list) --
A complex type that contains Tag elements.
(dict) --
A complex type that contains Tag key and Tag value.
Key (string) -- [REQUIRED]
A string that contains Tag key.
The string length should be between 1 and 128 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
Value (string) --
A string that contains an optional Tag value.
The string length should be between 0 and 256 characters. Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
dict
Response Syntax
{
'KeyValueStore': {
'Name': 'string',
'Id': 'string',
'Comment': 'string',
'ARN': 'string',
'Status': 'string',
'LastModifiedTime': datetime(2015, 1, 1)
},
'ETag': 'string',
'Location': 'string'
}
Response Structure
(dict) --
KeyValueStore (dict) --
The resulting key value store.
Name (string) --
The name of the key value store.
Id (string) --
The unique Id for the key value store.
Comment (string) --
A comment for the key value store.
ARN (string) --
The Amazon Resource Name (ARN) of the key value store.
Status (string) --
The status of the key value store.
LastModifiedTime (datetime) --
The last-modified time of the key value store.
ETag (string) --
The ETag in the resulting key value store.
Location (string) --
The location of the resulting key value store.