add_application_input_processing_configuration

add_application_input_processing_configuration(**kwargs)

Adds an InputProcessingConfiguration to a SQL-based Kinesis Data Analytics application. An input processor pre-processes records on the input stream before the application's SQL code executes. Currently, the only input processor available is Amazon Lambda.

See also: AWS API Documentation

Request Syntax

response = client.add_application_input_processing_configuration(
    ApplicationName='string',
    CurrentApplicationVersionId=123,
    InputId='string',
    InputProcessingConfiguration={
        'InputLambdaProcessor': {
            'ResourceARN': 'string'
        }
    }
)
Parameters
  • ApplicationName (string) --

    [REQUIRED]

    The name of the application to which you want to add the input processing configuration.

  • CurrentApplicationVersionId (integer) --

    [REQUIRED]

    The version of the application to which you want to add the input processing configuration. You can use the DescribeApplication operation to get the current application version. If the version specified is not the current version, the ConcurrentModificationException is returned.

  • InputId (string) --

    [REQUIRED]

    The ID of the input configuration to add the input processing configuration to. You can get a list of the input IDs for an application using the DescribeApplication operation.

  • InputProcessingConfiguration (dict) --

    [REQUIRED]

    The InputProcessingConfiguration to add to the application.

    • InputLambdaProcessor (dict) -- [REQUIRED]

      The InputLambdaProcessor that is used to preprocess the records in the stream before being processed by your application code.

      • ResourceARN (string) -- [REQUIRED]

        The ARN of the Amazon Lambda function that operates on records in the stream.

        Note

        To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: Amazon Lambda

Return type

dict

Returns

Response Syntax

{
    'ApplicationARN': 'string',
    'ApplicationVersionId': 123,
    'InputId': 'string',
    'InputProcessingConfigurationDescription': {
        'InputLambdaProcessorDescription': {
            'ResourceARN': 'string',
            'RoleARN': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • ApplicationARN (string) --

      The Amazon Resource Name (ARN) of the application.

    • ApplicationVersionId (integer) --

      Provides the current application version.

    • InputId (string) --

      The input ID that is associated with the application input. This is the ID that Kinesis Data Analytics assigns to each input configuration that you add to your application.

    • InputProcessingConfigurationDescription (dict) --

      The description of the preprocessor that executes on records in this input before the application's code is run.

      • InputLambdaProcessorDescription (dict) --

        Provides configuration information about the associated InputLambdaProcessorDescription

        • ResourceARN (string) --

          The ARN of the Amazon Lambda function that is used to preprocess the records in the stream.

          Note

          To specify an earlier version of the Lambda function than the latest, include the Lambda function version in the Lambda function ARN. For more information about Lambda ARNs, see Example ARNs: Amazon Lambda

        • RoleARN (string) --

          The ARN of the IAM role that is used to access the Amazon Lambda function.

          Note

          Provided for backward compatibility. Applications that are created with the current API version have an application-level service execution role rather than a resource-level role.

Exceptions

  • KinesisAnalyticsV2.Client.exceptions.ResourceNotFoundException
  • KinesisAnalyticsV2.Client.exceptions.ResourceInUseException
  • KinesisAnalyticsV2.Client.exceptions.InvalidArgumentException
  • KinesisAnalyticsV2.Client.exceptions.ConcurrentModificationException
  • KinesisAnalyticsV2.Client.exceptions.InvalidRequestException