AppSync.Client.
create_function
(**kwargs)¶Creates a Function
object.
A function is a reusable entity. You can use multiple functions to compose the resolver logic.
See also: AWS API Documentation
Request Syntax
response = client.create_function(
apiId='string',
name='string',
description='string',
dataSourceName='string',
requestMappingTemplate='string',
responseMappingTemplate='string',
functionVersion='string',
syncConfig={
'conflictHandler': 'OPTIMISTIC_CONCURRENCY'|'LAMBDA'|'AUTOMERGE'|'NONE',
'conflictDetection': 'VERSION'|'NONE',
'lambdaConflictHandlerConfig': {
'lambdaConflictHandlerArn': 'string'
}
},
maxBatchSize=123,
runtime={
'name': 'APPSYNC_JS',
'runtimeVersion': 'string'
},
code='string'
)
[REQUIRED]
The GraphQL API ID.
[REQUIRED]
The Function
name. The function name does not have to be unique.
Function
description.[REQUIRED]
The Function
DataSource
name.
Function
request mapping template. Functions support only the 2018-05-29 version of the request mapping template.Function
response mapping template.version
of the request mapping template. Currently, the supported value is 2018-05-29. Note that when using VTL and mapping templates, the functionVersion
is required.Describes a Sync configuration for a resolver.
Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.
The Conflict Resolution strategy to perform in the event of a conflict.
LambdaConflictHandlerConfig
.The Conflict Detection strategy to use.
The LambdaConflictHandlerConfig
when configuring LAMBDA
as the Conflict Handler.
The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler.
Describes a runtime used by an Amazon Web Services AppSync pipeline resolver or Amazon Web Services AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.
The name
of the runtime to use. Currently, the only allowed value is APPSYNC_JS
.
The version
of the runtime to use. Currently, the only allowed version is 1.0.0
.
function
code that contains the request and response functions. When code is used, the runtime
is required. The runtime
value must be APPSYNC_JS
.dict
Response Syntax
{
'functionConfiguration': {
'functionId': 'string',
'functionArn': 'string',
'name': 'string',
'description': 'string',
'dataSourceName': 'string',
'requestMappingTemplate': 'string',
'responseMappingTemplate': 'string',
'functionVersion': 'string',
'syncConfig': {
'conflictHandler': 'OPTIMISTIC_CONCURRENCY'|'LAMBDA'|'AUTOMERGE'|'NONE',
'conflictDetection': 'VERSION'|'NONE',
'lambdaConflictHandlerConfig': {
'lambdaConflictHandlerArn': 'string'
}
},
'maxBatchSize': 123,
'runtime': {
'name': 'APPSYNC_JS',
'runtimeVersion': 'string'
},
'code': 'string'
}
}
Response Structure
(dict) --
functionConfiguration (dict) --
The Function
object.
functionId (string) --
A unique ID representing the Function
object.
functionArn (string) --
The Amazon Resource Name (ARN) of the Function
object.
name (string) --
The name of the Function
object.
description (string) --
The Function
description.
dataSourceName (string) --
The name of the DataSource
.
requestMappingTemplate (string) --
The Function
request mapping template. Functions support only the 2018-05-29 version of the request mapping template.
responseMappingTemplate (string) --
The Function
response mapping template.
functionVersion (string) --
The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported.
syncConfig (dict) --
Describes a Sync configuration for a resolver.
Specifies which Conflict Detection strategy and Resolution strategy to use when the resolver is invoked.
conflictHandler (string) --
The Conflict Resolution strategy to perform in the event of a conflict.
LambdaConflictHandlerConfig
.conflictDetection (string) --
The Conflict Detection strategy to use.
lambdaConflictHandlerConfig (dict) --
The LambdaConflictHandlerConfig
when configuring LAMBDA
as the Conflict Handler.
lambdaConflictHandlerArn (string) --
The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler.
maxBatchSize (integer) --
The maximum batching size for a resolver.
runtime (dict) --
Describes a runtime used by an Amazon Web Services AppSync pipeline resolver or Amazon Web Services AppSync function. Specifies the name and version of the runtime to use. Note that if a runtime is specified, code must also be specified.
name (string) --
The name
of the runtime to use. Currently, the only allowed value is APPSYNC_JS
.
runtimeVersion (string) --
The version
of the runtime to use. Currently, the only allowed version is 1.0.0
.
code (string) --
The function
code that contains the request and response functions. When code is used, the runtime
is required. The runtime
value must be APPSYNC_JS
.
Exceptions
AppSync.Client.exceptions.ConcurrentModificationException
AppSync.Client.exceptions.NotFoundException
AppSync.Client.exceptions.UnauthorizedException
AppSync.Client.exceptions.InternalFailureException