Skip to main content

function_configurations

Creates, updates, deletes or gets a function_configuration resource or lists function_configurations in a region

Overview

Namefunction_configurations
TypeResource
DescriptionAn example resource schema demonstrating some basic constructs and validation rules.
Idaws.appsync.function_configurations

Fields

NameDatatypeDescription
function_idstringThe unique identifier for the function generated by the service
function_arnstringThe ARN for the function generated by the service
api_idstringThe AWS AppSync GraphQL API that you want to attach using this function.
codestringThe resolver code that contains the request and response functions. When code is used, the runtime is required. The runtime value must be APPSYNC_JS.
code_s3_locationstringThe Amazon S3 endpoint (where the code is located??).
data_source_namestringThe name of data source this function will attach.
descriptionstringThe function description.
function_versionstringThe version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported.
max_batch_sizeintegerThe maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation.
namestringThe name of the function.
request_mapping_templatestringThe Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template.
request_mapping_template_s3_locationstringDescribes a Sync configuration for a resolver. Contains information on which Conflict Detection, as well as Resolution strategy, should be performed when the resolver is invoked.
response_mapping_templatestringThe Function response mapping template.
response_mapping_template_s3_locationstringThe location of a response mapping template in an Amazon S3 bucket. Use this if you want to provision with a template file in Amazon S3 rather than embedding it in your CloudFormation template.
runtimeobjectDescribes a runtime used by an AWS AppSync pipeline resolver or AWS AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.
sync_configobjectDescribes a Sync configuration for a resolver. Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.
regionstringAWS region.

Methods

NameAccessible byRequired Params
create_resourceINSERTApiId, DataSourceName, Name, region
delete_resourceDELETEdata__Identifier, region
update_resourceUPDATEdata__Identifier, data__PatchDocument, region
list_resourcesSELECTregion
get_resourceSELECTdata__Identifier, region

SELECT examples

Gets all function_configurations in a region.

SELECT
region,
function_id,
function_arn,
api_id,
code,
code_s3_location,
data_source_name,
description,
function_version,
max_batch_size,
name,
request_mapping_template,
request_mapping_template_s3_location,
response_mapping_template,
response_mapping_template_s3_location,
runtime,
sync_config
FROM aws.appsync.function_configurations
WHERE region = 'us-east-1';

Gets all properties from an individual function_configuration.

SELECT
region,
function_id,
function_arn,
api_id,
code,
code_s3_location,
data_source_name,
description,
function_version,
max_batch_size,
name,
request_mapping_template,
request_mapping_template_s3_location,
response_mapping_template,
response_mapping_template_s3_location,
runtime,
sync_config
FROM aws.appsync.function_configurations
WHERE region = 'us-east-1' AND data__Identifier = '<FunctionArn>';

INSERT example

Use the following StackQL query and manifest file to create a new function_configuration resource, using stack-deploy.

/*+ create */
INSERT INTO aws.appsync.function_configurations (
ApiId,
DataSourceName,
Name,
region
)
SELECT
'{{ ApiId }}',
'{{ DataSourceName }}',
'{{ Name }}',
'{{ region }}';

DELETE example

/*+ delete */
DELETE FROM aws.appsync.function_configurations
WHERE data__Identifier = '<FunctionArn>'
AND region = 'us-east-1';

Permissions

To operate on the function_configurations resource, the following permissions are required:

Create

s3:GetObject,
appsync:CreateFunction

Read

appsync:GetFunction

Update

s3:GetObject,
appsync:UpdateFunction

Delete

appsync:DeleteFunction

List

appsync:ListFunctions