aws-sdk-lambda 1.125.0 → 1.127.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 40b3d33f4b2e56b8fc0b9c01478b440fe801d4acc908d2fd95a530436c4dfba7
4
- data.tar.gz: 8e7edf24478d2fc571bb9aae8a37ceea0e06caf355ca05aac662a2b4d4c788d2
3
+ metadata.gz: 275f1ef6c8d9f4e06be88fb52926b5aa8b24edabfefb35cb7981eaa5b587c1d2
4
+ data.tar.gz: 06a6aaef69c392106354e7b8afd6715c49abcca48ccdd21e67232da5dc2245ad
5
5
  SHA512:
6
- metadata.gz: 87b0c01799c406f08a9f86ed387a71e19bf11966f2a4d3f2c4f863523df10f90700b170fd5167471d40004015e43e6a3f6c2a6d5d994c60f3b9faaf7701319af
7
- data.tar.gz: f889aa647a68fa2feb2b8baf6838db582a8b5f299585c4e8574bfeb5e4f267a340bd9eb36c799a250ecf87cb58760b6064af1abcdff4c7857291f1bbcc812535
6
+ metadata.gz: a1052b31f40d459ae4a9a93a97b451663e7c91d94cda950c2cadb1e2c632f92484fc84ab539700a94f40104e26dba21672e47e49a133de0f2e674822a1148f02
7
+ data.tar.gz: 4e46210809f415c05108bdc475960d61457610d66e3ca883bb296f00c609d1ddef513bda99f74fdfcceb9a9d0cba6aa9e5e766cc5b3c468432ce89fa34acc054
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.127.0 (2024-08-21)
5
+ ------------------
6
+
7
+ * Feature - Release FilterCriteria encryption for Lambda EventSourceMapping, enabling customers to encrypt their filter criteria using a customer-owned KMS key.
8
+
9
+ 1.126.0 (2024-08-19)
10
+ ------------------
11
+
12
+ * Feature - Release Lambda FunctionRecursiveConfig, enabling customers to turn recursive loop detection on or off on individual functions. This release adds two new APIs, GetFunctionRecursionConfig and PutFunctionRecursionConfig.
13
+
4
14
  1.125.0 (2024-07-02)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.125.0
1
+ 1.127.0
@@ -509,24 +509,24 @@ module Aws::Lambda
509
509
  req.send_request(options)
510
510
  end
511
511
 
512
- # Grants an Amazon Web Service, Amazon Web Services account, or Amazon
513
- # Web Services organization permission to use a function. You can apply
514
- # the policy at the function level, or specify a qualifier to restrict
515
- # access to a single version or alias. If you use a qualifier, the
516
- # invoker must use the full Amazon Resource Name (ARN) of that version
517
- # or alias to invoke the function. Note: Lambda does not support adding
518
- # policies to version $LATEST.
512
+ # Grants an Amazon Web Servicesservice, Amazon Web Services account, or
513
+ # Amazon Web Services organization permission to use a function. You can
514
+ # apply the policy at the function level, or specify a qualifier to
515
+ # restrict access to a single version or alias. If you use a qualifier,
516
+ # the invoker must use the full Amazon Resource Name (ARN) of that
517
+ # version or alias to invoke the function. Note: Lambda does not support
518
+ # adding policies to version $LATEST.
519
519
  #
520
520
  # To grant permission to another account, specify the account ID as the
521
521
  # `Principal`. To grant permission to an organization defined in
522
522
  # Organizations, specify the organization ID as the `PrincipalOrgID`.
523
- # For Amazon Web Services, the principal is a domain-style identifier
524
- # that the service defines, such as `s3.amazonaws.com` or
525
- # `sns.amazonaws.com`. For Amazon Web Services, you can also specify the
526
- # ARN of the associated resource as the `SourceArn`. If you grant
527
- # permission to a service principal without specifying the source, other
528
- # accounts could potentially configure resources in their account to
529
- # invoke your Lambda function.
523
+ # For Amazon Web Servicesservices, the principal is a domain-style
524
+ # identifier that the service defines, such as `s3.amazonaws.com` or
525
+ # `sns.amazonaws.com`. For Amazon Web Servicesservices, you can also
526
+ # specify the ARN of the associated resource as the `SourceArn`. If you
527
+ # grant permission to a service principal without specifying the source,
528
+ # other accounts could potentially configure resources in their account
529
+ # to invoke your Lambda function.
530
530
  #
531
531
  # This operation adds a statement to a resource-based permissions policy
532
532
  # for the function. For more information about function policies, see
@@ -562,23 +562,25 @@ module Aws::Lambda
562
562
  # `lambda:InvokeFunction` or `lambda:GetFunction`.
563
563
  #
564
564
  # @option params [required, String] :principal
565
- # The Amazon Web Service or Amazon Web Services account that invokes the
566
- # function. If you specify a service, use `SourceArn` or `SourceAccount`
567
- # to limit who can invoke the function through that service.
565
+ # The Amazon Web Servicesservice or Amazon Web Services account that
566
+ # invokes the function. If you specify a service, use `SourceArn` or
567
+ # `SourceAccount` to limit who can invoke the function through that
568
+ # service.
568
569
  #
569
570
  # @option params [String] :source_arn
570
- # For Amazon Web Services, the ARN of the Amazon Web Services resource
571
- # that invokes the function. For example, an Amazon S3 bucket or Amazon
572
- # SNS topic.
571
+ # For Amazon Web Servicesservices, the ARN of the Amazon Web Services
572
+ # resource that invokes the function. For example, an Amazon S3 bucket
573
+ # or Amazon SNS topic.
573
574
  #
574
575
  # Note that Lambda configures the comparison using the `StringLike`
575
576
  # operator.
576
577
  #
577
578
  # @option params [String] :source_account
578
- # For Amazon Web Service, the ID of the Amazon Web Services account that
579
- # owns the resource. Use this together with `SourceArn` to ensure that
580
- # the specified account owns the resource. It is possible for an Amazon
581
- # S3 bucket to be deleted by its owner and recreated by another account.
579
+ # For Amazon Web Servicesservice, the ID of the Amazon Web Services
580
+ # account that owns the resource. Use this together with `SourceArn` to
581
+ # ensure that the specified account owns the resource. It is possible
582
+ # for an Amazon S3 bucket to be deleted by its owner and recreated by
583
+ # another account.
582
584
  #
583
585
  # @option params [String] :event_source_token
584
586
  # For Alexa Smart Home functions, a token that the invoker must supply.
@@ -937,16 +939,17 @@ module Aws::Lambda
937
939
  # `MaximumBatchingWindowInSeconds` to any value from 0 seconds to 300
938
940
  # seconds in increments of seconds.
939
941
  #
940
- # For streams and Amazon SQS event sources, the default batching window
941
- # is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ,
942
- # and DocumentDB event sources, the default batching window is 500 ms.
943
- # Note that because you can only change `MaximumBatchingWindowInSeconds`
944
- # in increments of seconds, you cannot revert back to the 500 ms default
945
- # batching window after you have changed it. To restore the default
946
- # batching window, you must create a new event source mapping.
947
- #
948
- # Related setting: For streams and Amazon SQS event sources, when you
949
- # set `BatchSize` to a value greater than 10, you must set
942
+ # For Kinesis, DynamoDB, and Amazon SQS event sources, the default
943
+ # batching window is 0 seconds. For Amazon MSK, Self-managed Apache
944
+ # Kafka, Amazon MQ, and DocumentDB event sources, the default batching
945
+ # window is 500 ms. Note that because you can only change
946
+ # `MaximumBatchingWindowInSeconds` in increments of seconds, you cannot
947
+ # revert back to the 500 ms default batching window after you have
948
+ # changed it. To restore the default batching window, you must create a
949
+ # new event source mapping.
950
+ #
951
+ # Related setting: For Kinesis, DynamoDB, and Amazon SQS event sources,
952
+ # when you set `BatchSize` to a value greater than 10, you must set
950
953
  # `MaximumBatchingWindowInSeconds` to at least 1.
951
954
  #
952
955
  # @option params [Integer] :parallelization_factor
@@ -1024,6 +1027,16 @@ module Aws::Lambda
1024
1027
  # @option params [Types::DocumentDBEventSourceConfig] :document_db_event_source_config
1025
1028
  # Specific configuration settings for a DocumentDB event source.
1026
1029
  #
1030
+ # @option params [String] :kms_key_arn
1031
+ # The ARN of the Key Management Service (KMS) customer managed key that
1032
+ # Lambda uses to encrypt your function's [filter criteria][1]. By
1033
+ # default, Lambda does not encrypt your filter criteria object. Specify
1034
+ # this property to encrypt data using your own customer managed key.
1035
+ #
1036
+ #
1037
+ #
1038
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html#filtering-basics
1039
+ #
1027
1040
  # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1028
1041
  #
1029
1042
  # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
@@ -1053,6 +1066,8 @@ module Aws::Lambda
1053
1066
  # * {Types::EventSourceMappingConfiguration#self_managed_kafka_event_source_config #self_managed_kafka_event_source_config} => Types::SelfManagedKafkaEventSourceConfig
1054
1067
  # * {Types::EventSourceMappingConfiguration#scaling_config #scaling_config} => Types::ScalingConfig
1055
1068
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
1069
+ # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
1070
+ # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
1056
1071
  #
1057
1072
  # @example Request syntax with placeholder values
1058
1073
  #
@@ -1112,6 +1127,7 @@ module Aws::Lambda
1112
1127
  # collection_name: "CollectionName",
1113
1128
  # full_document: "UpdateLookup", # accepts UpdateLookup, Default
1114
1129
  # },
1130
+ # kms_key_arn: "KMSKeyArn",
1115
1131
  # })
1116
1132
  #
1117
1133
  # @example Response structure
@@ -1154,6 +1170,9 @@ module Aws::Lambda
1154
1170
  # resp.document_db_event_source_config.database_name #=> String
1155
1171
  # resp.document_db_event_source_config.collection_name #=> String
1156
1172
  # resp.document_db_event_source_config.full_document #=> String, one of "UpdateLookup", "Default"
1173
+ # resp.kms_key_arn #=> String
1174
+ # resp.filter_criteria_error.error_code #=> String
1175
+ # resp.filter_criteria_error.message #=> String
1157
1176
  #
1158
1177
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping AWS API Documentation
1159
1178
  #
@@ -1168,8 +1187,8 @@ module Aws::Lambda
1168
1187
  # [deployment package][1] and an [execution role][2]. The deployment
1169
1188
  # package is a .zip file archive or container image that contains your
1170
1189
  # function code. The execution role grants the function permission to
1171
- # use Amazon Web Services, such as Amazon CloudWatch Logs for log
1172
- # streaming and X-Ray for request tracing.
1190
+ # use Amazon Web Servicesservices, such as Amazon CloudWatch Logs for
1191
+ # log streaming and X-Ray for request tracing.
1173
1192
  #
1174
1193
  # If the deployment package is a [container image][3], then you set the
1175
1194
  # package type to `Image`. For a container image, the code property must
@@ -1215,17 +1234,17 @@ module Aws::Lambda
1215
1234
  # configuration includes set of signing profiles, which define the
1216
1235
  # trusted publishers for this function.
1217
1236
  #
1218
- # If another Amazon Web Services account or an Amazon Web Service
1219
- # invokes your function, use AddPermission to grant permission by
1220
- # creating a resource-based Identity and Access Management (IAM) policy.
1221
- # You can grant permissions at the function level, on a version, or on
1222
- # an alias.
1237
+ # If another Amazon Web Services account or an Amazon Web
1238
+ # Servicesservice invokes your function, use AddPermission to grant
1239
+ # permission by creating a resource-based Identity and Access Management
1240
+ # (IAM) policy. You can grant permissions at the function level, on a
1241
+ # version, or on an alias.
1223
1242
  #
1224
1243
  # To invoke your function directly, use Invoke. To invoke your function
1225
- # in response to events in other Amazon Web Services, create an event
1226
- # source mapping (CreateEventSourceMapping), or configure a function
1227
- # trigger in the other service. For more information, see [Invoking
1228
- # Lambda functions][6].
1244
+ # in response to events in other Amazon Web Servicesservices, create an
1245
+ # event source mapping (CreateEventSourceMapping), or configure a
1246
+ # function trigger in the other service. For more information, see
1247
+ # [Invoking Lambda functions][6].
1229
1248
  #
1230
1249
  #
1231
1250
  #
@@ -1252,16 +1271,24 @@ module Aws::Lambda
1252
1271
  # only the function name, it is limited to 64 characters in length.
1253
1272
  #
1254
1273
  # @option params [String] :runtime
1255
- # The identifier of the function's [runtime][1]. Runtime is required if
1256
- # the deployment package is a .zip file archive.
1274
+ # The identifier of the function's [ runtime][1]. Runtime is required
1275
+ # if the deployment package is a .zip file archive. Specifying a runtime
1276
+ # results in an error if you're deploying a function using a container
1277
+ # image.
1257
1278
  #
1258
- # The following list includes deprecated runtimes. For more information,
1259
- # see [Runtime deprecation policy][2].
1279
+ # The following list includes deprecated runtimes. Lambda blocks
1280
+ # creating new functions and updating existing functions shortly after
1281
+ # each runtime is deprecated. For more information, see [Runtime use
1282
+ # after deprecation][2].
1283
+ #
1284
+ # For a list of all currently supported runtimes, see [Supported
1285
+ # runtimes][3].
1260
1286
  #
1261
1287
  #
1262
1288
  #
1263
1289
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html
1264
- # [2]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy
1290
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels
1291
+ # [3]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported
1265
1292
  #
1266
1293
  # @option params [required, String] :role
1267
1294
  # The Amazon Resource Name (ARN) of the function's execution role.
@@ -1814,6 +1841,8 @@ module Aws::Lambda
1814
1841
  # * {Types::EventSourceMappingConfiguration#self_managed_kafka_event_source_config #self_managed_kafka_event_source_config} => Types::SelfManagedKafkaEventSourceConfig
1815
1842
  # * {Types::EventSourceMappingConfiguration#scaling_config #scaling_config} => Types::ScalingConfig
1816
1843
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
1844
+ # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
1845
+ # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
1817
1846
  #
1818
1847
  # @example Request syntax with placeholder values
1819
1848
  #
@@ -1861,6 +1890,9 @@ module Aws::Lambda
1861
1890
  # resp.document_db_event_source_config.database_name #=> String
1862
1891
  # resp.document_db_event_source_config.collection_name #=> String
1863
1892
  # resp.document_db_event_source_config.full_document #=> String, one of "UpdateLookup", "Default"
1893
+ # resp.kms_key_arn #=> String
1894
+ # resp.filter_criteria_error.error_code #=> String
1895
+ # resp.filter_criteria_error.message #=> String
1864
1896
  #
1865
1897
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping AWS API Documentation
1866
1898
  #
@@ -1877,9 +1909,9 @@ module Aws::Lambda
1877
1909
  # for DeleteAlias.
1878
1910
  #
1879
1911
  # To delete Lambda event source mappings that invoke a function, use
1880
- # DeleteEventSourceMapping. For Amazon Web Services and resources that
1881
- # invoke your function directly, delete the trigger in the service where
1882
- # you originally configured it.
1912
+ # DeleteEventSourceMapping. For Amazon Web Servicesservices and
1913
+ # resources that invoke your function directly, delete the trigger in
1914
+ # the service where you originally configured it.
1883
1915
  #
1884
1916
  # @option params [required, String] :function_name
1885
1917
  # The name or ARN of the Lambda function or version.
@@ -2301,6 +2333,8 @@ module Aws::Lambda
2301
2333
  # * {Types::EventSourceMappingConfiguration#self_managed_kafka_event_source_config #self_managed_kafka_event_source_config} => Types::SelfManagedKafkaEventSourceConfig
2302
2334
  # * {Types::EventSourceMappingConfiguration#scaling_config #scaling_config} => Types::ScalingConfig
2303
2335
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
2336
+ # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
2337
+ # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
2304
2338
  #
2305
2339
  # @example Request syntax with placeholder values
2306
2340
  #
@@ -2348,6 +2382,9 @@ module Aws::Lambda
2348
2382
  # resp.document_db_event_source_config.database_name #=> String
2349
2383
  # resp.document_db_event_source_config.collection_name #=> String
2350
2384
  # resp.document_db_event_source_config.full_document #=> String, one of "UpdateLookup", "Default"
2385
+ # resp.kms_key_arn #=> String
2386
+ # resp.filter_criteria_error.error_code #=> String
2387
+ # resp.filter_criteria_error.message #=> String
2351
2388
  #
2352
2389
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping AWS API Documentation
2353
2390
  #
@@ -2786,6 +2823,37 @@ module Aws::Lambda
2786
2823
  req.send_request(options)
2787
2824
  end
2788
2825
 
2826
+ # Returns your function's [recursive loop detection][1] configuration.
2827
+ #
2828
+ #
2829
+ #
2830
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-recursion.html
2831
+ #
2832
+ # @option params [required, String] :function_name
2833
+ #
2834
+ # @return [Types::GetFunctionRecursionConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2835
+ #
2836
+ # * {Types::GetFunctionRecursionConfigResponse#recursive_loop #recursive_loop} => String
2837
+ #
2838
+ # @example Request syntax with placeholder values
2839
+ #
2840
+ # resp = client.get_function_recursion_config({
2841
+ # function_name: "UnqualifiedFunctionName", # required
2842
+ # })
2843
+ #
2844
+ # @example Response structure
2845
+ #
2846
+ # resp.recursive_loop #=> String, one of "Allow", "Terminate"
2847
+ #
2848
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionRecursionConfig AWS API Documentation
2849
+ #
2850
+ # @overload get_function_recursion_config(params = {})
2851
+ # @param [Hash] params ({})
2852
+ def get_function_recursion_config(params = {}, options = {})
2853
+ req = build_request(:get_function_recursion_config, params)
2854
+ req.send_request(options)
2855
+ end
2856
+
2789
2857
  # Returns details about a Lambda function URL.
2790
2858
  #
2791
2859
  # @option params [required, String] :function_name
@@ -3809,6 +3877,9 @@ module Aws::Lambda
3809
3877
  # resp.event_source_mappings[0].document_db_event_source_config.database_name #=> String
3810
3878
  # resp.event_source_mappings[0].document_db_event_source_config.collection_name #=> String
3811
3879
  # resp.event_source_mappings[0].document_db_event_source_config.full_document #=> String, one of "UpdateLookup", "Default"
3880
+ # resp.event_source_mappings[0].kms_key_arn #=> String
3881
+ # resp.event_source_mappings[0].filter_criteria_error.error_code #=> String
3882
+ # resp.event_source_mappings[0].filter_criteria_error.message #=> String
3812
3883
  #
3813
3884
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings AWS API Documentation
3814
3885
  #
@@ -4136,14 +4207,18 @@ module Aws::Lambda
4136
4207
  # [2]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html
4137
4208
  #
4138
4209
  # @option params [String] :compatible_runtime
4139
- # A runtime identifier. For example, `java21`.
4210
+ # A runtime identifier.
4140
4211
  #
4141
4212
  # The following list includes deprecated runtimes. For more information,
4142
- # see [Runtime deprecation policy][1].
4213
+ # see [Runtime use after deprecation][1].
4143
4214
  #
4215
+ # For a list of all currently supported runtimes, see [Supported
4216
+ # runtimes][2].
4144
4217
  #
4145
4218
  #
4146
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy
4219
+ #
4220
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels
4221
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported
4147
4222
  #
4148
4223
  # @option params [required, String] :layer_name
4149
4224
  # The name or Amazon Resource Name (ARN) of the layer.
@@ -4214,14 +4289,18 @@ module Aws::Lambda
4214
4289
  # [3]: https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html
4215
4290
  #
4216
4291
  # @option params [String] :compatible_runtime
4217
- # A runtime identifier. For example, `java21`.
4292
+ # A runtime identifier.
4218
4293
  #
4219
4294
  # The following list includes deprecated runtimes. For more information,
4220
- # see [Runtime deprecation policy][1].
4295
+ # see [Runtime use after deprecation][1].
4296
+ #
4297
+ # For a list of all currently supported runtimes, see [Supported
4298
+ # runtimes][2].
4221
4299
  #
4222
4300
  #
4223
4301
  #
4224
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy
4302
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels
4303
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported
4225
4304
  #
4226
4305
  # @option params [String] :marker
4227
4306
  # A pagination token returned by a previous call.
@@ -4993,6 +5072,91 @@ module Aws::Lambda
4993
5072
  req.send_request(options)
4994
5073
  end
4995
5074
 
5075
+ # Sets your function's [recursive loop detection][1] configuration.
5076
+ #
5077
+ # When you configure a Lambda function to output to the same service or
5078
+ # resource that invokes the function, it's possible to create an
5079
+ # infinite recursive loop. For example, a Lambda function might write a
5080
+ # message to an Amazon Simple Queue Service (Amazon SQS) queue, which
5081
+ # then invokes the same function. This invocation causes the function to
5082
+ # write another message to the queue, which in turn invokes the function
5083
+ # again.
5084
+ #
5085
+ # Lambda can detect certain types of recursive loops shortly after they
5086
+ # occur. When Lambda detects a recursive loop and your function's
5087
+ # recursive loop detection configuration is set to `Terminate`, it stops
5088
+ # your function being invoked and notifies you.
5089
+ #
5090
+ #
5091
+ #
5092
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-recursion.html
5093
+ #
5094
+ # @option params [required, String] :function_name
5095
+ # The name or ARN of the Lambda function.
5096
+ #
5097
+ # **Name formats**
5098
+ #
5099
+ # * **Function name** – `my-function`.
5100
+ #
5101
+ # * **Function ARN** –
5102
+ # `arn:aws:lambda:us-west-2:123456789012:function:my-function`.
5103
+ #
5104
+ # * **Partial ARN** – `123456789012:function:my-function`.
5105
+ #
5106
+ # The length constraint applies only to the full ARN. If you specify
5107
+ # only the function name, it is limited to 64 characters in length.
5108
+ #
5109
+ # @option params [required, String] :recursive_loop
5110
+ # If you set your function's recursive loop detection configuration to
5111
+ # `Allow`, Lambda doesn't take any action when it detects your function
5112
+ # being invoked as part of a recursive loop. We recommend that you only
5113
+ # use this setting if your design intentionally uses a Lambda function
5114
+ # to write data back to the same Amazon Web Services resource that
5115
+ # invokes it.
5116
+ #
5117
+ # If you set your function's recursive loop detection configuration to
5118
+ # `Terminate`, Lambda stops your function being invoked and notifies you
5119
+ # when it detects your function being invoked as part of a recursive
5120
+ # loop.
5121
+ #
5122
+ # By default, Lambda sets your function's configuration to `Terminate`.
5123
+ #
5124
+ # If your design intentionally uses a Lambda function to write data back
5125
+ # to the same Amazon Web Services resource that invokes the function,
5126
+ # then use caution and implement suitable guard rails to prevent
5127
+ # unexpected charges being billed to your Amazon Web Services account.
5128
+ # To learn more about best practices for using recursive invocation
5129
+ # patterns, see [Recursive patterns that cause run-away Lambda
5130
+ # functions][1] in Serverless Land.
5131
+ #
5132
+ #
5133
+ #
5134
+ # [1]: https://serverlessland.com/content/service/lambda/guides/aws-lambda-operator-guide/recursive-runaway
5135
+ #
5136
+ # @return [Types::PutFunctionRecursionConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5137
+ #
5138
+ # * {Types::PutFunctionRecursionConfigResponse#recursive_loop #recursive_loop} => String
5139
+ #
5140
+ # @example Request syntax with placeholder values
5141
+ #
5142
+ # resp = client.put_function_recursion_config({
5143
+ # function_name: "UnqualifiedFunctionName", # required
5144
+ # recursive_loop: "Allow", # required, accepts Allow, Terminate
5145
+ # })
5146
+ #
5147
+ # @example Response structure
5148
+ #
5149
+ # resp.recursive_loop #=> String, one of "Allow", "Terminate"
5150
+ #
5151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionRecursionConfig AWS API Documentation
5152
+ #
5153
+ # @overload put_function_recursion_config(params = {})
5154
+ # @param [Hash] params ({})
5155
+ def put_function_recursion_config(params = {}, options = {})
5156
+ req = build_request(:put_function_recursion_config, params)
5157
+ req.send_request(options)
5158
+ end
5159
+
4996
5160
  # Adds a provisioned concurrency configuration to a function's alias or
4997
5161
  # version.
4998
5162
  #
@@ -5188,9 +5352,9 @@ module Aws::Lambda
5188
5352
  req.send_request(options)
5189
5353
  end
5190
5354
 
5191
- # Revokes function-use permission from an Amazon Web Service or another
5192
- # Amazon Web Services account. You can get the ID of the statement from
5193
- # the output of GetPolicy.
5355
+ # Revokes function-use permission from an Amazon Web Servicesservice or
5356
+ # another Amazon Web Services account. You can get the ID of the
5357
+ # statement from the output of GetPolicy.
5194
5358
  #
5195
5359
  # @option params [required, String] :function_name
5196
5360
  # The name or ARN of the Lambda function, version, or alias.
@@ -5579,16 +5743,17 @@ module Aws::Lambda
5579
5743
  # `MaximumBatchingWindowInSeconds` to any value from 0 seconds to 300
5580
5744
  # seconds in increments of seconds.
5581
5745
  #
5582
- # For streams and Amazon SQS event sources, the default batching window
5583
- # is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ,
5584
- # and DocumentDB event sources, the default batching window is 500 ms.
5585
- # Note that because you can only change `MaximumBatchingWindowInSeconds`
5586
- # in increments of seconds, you cannot revert back to the 500 ms default
5587
- # batching window after you have changed it. To restore the default
5588
- # batching window, you must create a new event source mapping.
5589
- #
5590
- # Related setting: For streams and Amazon SQS event sources, when you
5591
- # set `BatchSize` to a value greater than 10, you must set
5746
+ # For Kinesis, DynamoDB, and Amazon SQS event sources, the default
5747
+ # batching window is 0 seconds. For Amazon MSK, Self-managed Apache
5748
+ # Kafka, Amazon MQ, and DocumentDB event sources, the default batching
5749
+ # window is 500 ms. Note that because you can only change
5750
+ # `MaximumBatchingWindowInSeconds` in increments of seconds, you cannot
5751
+ # revert back to the 500 ms default batching window after you have
5752
+ # changed it. To restore the default batching window, you must create a
5753
+ # new event source mapping.
5754
+ #
5755
+ # Related setting: For Kinesis, DynamoDB, and Amazon SQS event sources,
5756
+ # when you set `BatchSize` to a value greater than 10, you must set
5592
5757
  # `MaximumBatchingWindowInSeconds` to at least 1.
5593
5758
  #
5594
5759
  # @option params [Types::DestinationConfig] :destination_config
@@ -5639,6 +5804,16 @@ module Aws::Lambda
5639
5804
  # @option params [Types::DocumentDBEventSourceConfig] :document_db_event_source_config
5640
5805
  # Specific configuration settings for a DocumentDB event source.
5641
5806
  #
5807
+ # @option params [String] :kms_key_arn
5808
+ # The ARN of the Key Management Service (KMS) customer managed key that
5809
+ # Lambda uses to encrypt your function's [filter criteria][1]. By
5810
+ # default, Lambda does not encrypt your filter criteria object. Specify
5811
+ # this property to encrypt data using your own customer managed key.
5812
+ #
5813
+ #
5814
+ #
5815
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html#filtering-basics
5816
+ #
5642
5817
  # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5643
5818
  #
5644
5819
  # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
@@ -5668,6 +5843,8 @@ module Aws::Lambda
5668
5843
  # * {Types::EventSourceMappingConfiguration#self_managed_kafka_event_source_config #self_managed_kafka_event_source_config} => Types::SelfManagedKafkaEventSourceConfig
5669
5844
  # * {Types::EventSourceMappingConfiguration#scaling_config #scaling_config} => Types::ScalingConfig
5670
5845
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
5846
+ # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
5847
+ # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
5671
5848
  #
5672
5849
  # @example Request syntax with placeholder values
5673
5850
  #
@@ -5712,6 +5889,7 @@ module Aws::Lambda
5712
5889
  # collection_name: "CollectionName",
5713
5890
  # full_document: "UpdateLookup", # accepts UpdateLookup, Default
5714
5891
  # },
5892
+ # kms_key_arn: "KMSKeyArn",
5715
5893
  # })
5716
5894
  #
5717
5895
  # @example Response structure
@@ -5754,6 +5932,9 @@ module Aws::Lambda
5754
5932
  # resp.document_db_event_source_config.database_name #=> String
5755
5933
  # resp.document_db_event_source_config.collection_name #=> String
5756
5934
  # resp.document_db_event_source_config.full_document #=> String, one of "UpdateLookup", "Default"
5935
+ # resp.kms_key_arn #=> String
5936
+ # resp.filter_criteria_error.error_code #=> String
5937
+ # resp.filter_criteria_error.message #=> String
5757
5938
  #
5758
5939
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping AWS API Documentation
5759
5940
  #
@@ -5999,7 +6180,7 @@ module Aws::Lambda
5999
6180
  #
6000
6181
  # To configure function concurrency, use PutFunctionConcurrency. To
6001
6182
  # grant invoke permissions to an Amazon Web Services account or Amazon
6002
- # Web Service, use AddPermission.
6183
+ # Web Servicesservice, use AddPermission.
6003
6184
  #
6004
6185
  #
6005
6186
  #
@@ -6072,16 +6253,24 @@ module Aws::Lambda
6072
6253
  # execution.
6073
6254
  #
6074
6255
  # @option params [String] :runtime
6075
- # The identifier of the function's [runtime][1]. Runtime is required if
6076
- # the deployment package is a .zip file archive.
6256
+ # The identifier of the function's [ runtime][1]. Runtime is required
6257
+ # if the deployment package is a .zip file archive. Specifying a runtime
6258
+ # results in an error if you're deploying a function using a container
6259
+ # image.
6077
6260
  #
6078
- # The following list includes deprecated runtimes. For more information,
6079
- # see [Runtime deprecation policy][2].
6261
+ # The following list includes deprecated runtimes. Lambda blocks
6262
+ # creating new functions and updating existing functions shortly after
6263
+ # each runtime is deprecated. For more information, see [Runtime use
6264
+ # after deprecation][2].
6265
+ #
6266
+ # For a list of all currently supported runtimes, see [Supported
6267
+ # runtimes][3].
6080
6268
  #
6081
6269
  #
6082
6270
  #
6083
6271
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html
6084
- # [2]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy
6272
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels
6273
+ # [3]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported
6085
6274
  #
6086
6275
  # @option params [Types::DeadLetterConfig] :dead_letter_config
6087
6276
  # A dead-letter queue configuration that specifies the queue or topic
@@ -6543,7 +6732,7 @@ module Aws::Lambda
6543
6732
  params: params,
6544
6733
  config: config)
6545
6734
  context[:gem_name] = 'aws-sdk-lambda'
6546
- context[:gem_version] = '1.125.0'
6735
+ context[:gem_version] = '1.127.0'
6547
6736
  Seahorse::Client::Request.new(handlers, context)
6548
6737
  end
6549
6738