AppSync / Client / update_function

update_function#

AppSync.Client.update_function(**kwargs)#

Updates a Function object.

See also: AWS API Documentation

Request Syntax

response = client.update_function(
    apiId='string',
    name='string',
    description='string',
    functionId='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'
)
Parameters:
  • apiId (string) –

    [REQUIRED]

    The GraphQL API ID.

  • name (string) –

    [REQUIRED]

    The Function name.

  • description (string) – The Function description.

  • functionId (string) –

    [REQUIRED]

    The function ID.

  • dataSourceName (string) –

    [REQUIRED]

    The Function DataSource name.

  • requestMappingTemplate (string) – The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template.

  • responseMappingTemplate (string) – The Function request mapping template.

  • functionVersion (string) – The 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.

  • 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.

      • OPTIMISTIC_CONCURRENCY: Resolve conflicts by rejecting mutations when versions don’t match the latest version at the server.

      • AUTOMERGE: Resolve conflicts with the Automerge conflict resolution strategy.

      • LAMBDA: Resolve conflicts with an Lambda function supplied in the LambdaConflictHandlerConfig.

    • conflictDetection (string) –

      The Conflict Detection strategy to use.

      • VERSION: Detect conflicts based on object versions for this resolver.

      • NONE: Do not detect conflicts when invoking this resolver.

    • 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) – [REQUIRED]

      The name of the runtime to use. Currently, the only allowed value is APPSYNC_JS.

    • runtimeVersion (string) – [REQUIRED]

      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.

Return type:

dict

Returns:

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.

          • OPTIMISTIC_CONCURRENCY: Resolve conflicts by rejecting mutations when versions don’t match the latest version at the server.

          • AUTOMERGE: Resolve conflicts with the Automerge conflict resolution strategy.

          • LAMBDA: Resolve conflicts with an Lambda function supplied in the LambdaConflictHandlerConfig.

        • conflictDetection (string) –

          The Conflict Detection strategy to use.

          • VERSION: Detect conflicts based on object versions for this resolver.

          • NONE: Do not detect conflicts when invoking this resolver.

        • 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

  • AppSync.Client.exceptions.BadRequestException