For new projects, we recommend that you use the new Managed Service for Apache Flink Studio over Kinesis Data Analytics for SQL Applications. Managed Service for Apache Flink Studio combines ease of use with advanced analytical capabilities, enabling you to build sophisticated stream processing applications in minutes.
UpdateApplication
Note
This documentation is for version 1 of the Amazon Kinesis Data Analytics API, which only supports SQL applications. Version 2 of the API supports SQL and Java applications. For more information about version 2, see Amazon Kinesis Data Analytics API V2 Documentation.
Updates an existing Amazon Kinesis Analytics application. Using this API, you can update application code, input configuration, and output configuration.
Note that Amazon Kinesis Analytics updates the
CurrentApplicationVersionId
each time you update your application.
This operation requires permission for the
kinesisanalytics:UpdateApplication
action.
Request Syntax
{
"ApplicationName": "string
",
"ApplicationUpdate": {
"ApplicationCodeUpdate": "string
",
"CloudWatchLoggingOptionUpdates": [
{
"CloudWatchLoggingOptionId": "string
",
"LogStreamARNUpdate": "string
",
"RoleARNUpdate": "string
"
}
],
"InputUpdates": [
{
"InputId": "string
",
"InputParallelismUpdate": {
"CountUpdate": number
},
"InputProcessingConfigurationUpdate": {
"InputLambdaProcessorUpdate": {
"ResourceARNUpdate": "string
",
"RoleARNUpdate": "string
"
}
},
"InputSchemaUpdate": {
"RecordColumnUpdates": [
{
"Mapping": "string
",
"Name": "string
",
"SqlType": "string
"
}
],
"RecordEncodingUpdate": "string
",
"RecordFormatUpdate": {
"MappingParameters": {
"CSVMappingParameters": {
"RecordColumnDelimiter": "string
",
"RecordRowDelimiter": "string
"
},
"JSONMappingParameters": {
"RecordRowPath": "string
"
}
},
"RecordFormatType": "string
"
}
},
"KinesisFirehoseInputUpdate": {
"ResourceARNUpdate": "string
",
"RoleARNUpdate": "string
"
},
"KinesisStreamsInputUpdate": {
"ResourceARNUpdate": "string
",
"RoleARNUpdate": "string
"
},
"NamePrefixUpdate": "string
"
}
],
"OutputUpdates": [
{
"DestinationSchemaUpdate": {
"RecordFormatType": "string
"
},
"KinesisFirehoseOutputUpdate": {
"ResourceARNUpdate": "string
",
"RoleARNUpdate": "string
"
},
"KinesisStreamsOutputUpdate": {
"ResourceARNUpdate": "string
",
"RoleARNUpdate": "string
"
},
"LambdaOutputUpdate": {
"ResourceARNUpdate": "string
",
"RoleARNUpdate": "string
"
},
"NameUpdate": "string
",
"OutputId": "string
"
}
],
"ReferenceDataSourceUpdates": [
{
"ReferenceId": "string
",
"ReferenceSchemaUpdate": {
"RecordColumns": [
{
"Mapping": "string
",
"Name": "string
",
"SqlType": "string
"
}
],
"RecordEncoding": "string
",
"RecordFormat": {
"MappingParameters": {
"CSVMappingParameters": {
"RecordColumnDelimiter": "string
",
"RecordRowDelimiter": "string
"
},
"JSONMappingParameters": {
"RecordRowPath": "string
"
}
},
"RecordFormatType": "string
"
}
},
"S3ReferenceDataSourceUpdate": {
"BucketARNUpdate": "string
",
"FileKeyUpdate": "string
",
"ReferenceRoleARNUpdate": "string
"
},
"TableNameUpdate": "string
"
}
]
},
"CurrentApplicationVersionId": number
}
Request Parameters
The request accepts the following data in JSON format.
- ApplicationName
-
Name of the Amazon Kinesis Analytics application to update.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9_.-]+
Required: Yes
- ApplicationUpdate
-
Describes application updates.
Type: ApplicationUpdate object
Required: Yes
- CurrentApplicationVersionId
-
The current application version ID. You can use the DescribeApplication operation to get this value.
Type: Long
Valid Range: Minimum value of 1. Maximum value of 999999999.
Required: Yes
Response Elements
If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.
Errors
- CodeValidationException
-
User-provided application code (query) is invalid. This can be a simple syntax error.
HTTP Status Code: 400
- ConcurrentModificationException
-
Exception thrown as a result of concurrent modification to an application. For example, two individuals attempting to edit the same application at the same time.
HTTP Status Code: 400
- InvalidArgumentException
-
Specified input parameter value is invalid.
HTTP Status Code: 400
- ResourceInUseException
-
Application is not available for this operation.
HTTP Status Code: 400
- ResourceNotFoundException
-
Specified application can't be found.
HTTP Status Code: 400
- UnsupportedOperationException
-
The request was rejected because a specified parameter is not supported or a specified resource is not valid for this operation.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: