CloudFront / Client / create_function
create_function#
- CloudFront.Client.create_function(**kwargs)#
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 withTestFunction
, and update it withUpdateFunction
.When you’re ready to use your function with a CloudFront distribution, use
PublishFunction
to copy the function from theDEVELOPMENT
stage toLIVE
. 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
response = 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' )
- Parameters:
Name (string) –
[REQUIRED]
A name to identify the function.
FunctionConfig (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.
FunctionCode (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.
- Return type:
dict
- Returns:
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
orLIVE
.When a function is in the
DEVELOPMENT
stage, you can test the function withTestFunction
, and update it withUpdateFunction
.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.
Exceptions
CloudFront.Client.exceptions.FunctionAlreadyExists
CloudFront.Client.exceptions.UnsupportedOperation
CloudFront.Client.exceptions.FunctionSizeLimitExceeded
CloudFront.Client.exceptions.InvalidArgument
CloudFront.Client.exceptions.TooManyFunctions