aws-sdk-lambda 1.32.0 → 1.33.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 11be2342d82ab811b9aee86c333200463f1dd871
4
- data.tar.gz: 856700bf96cc84f4f6ead68e2424317ae2ab0397
3
+ metadata.gz: 30fe1e36477380eb1a51aa7a1ad12eeeb376a166
4
+ data.tar.gz: 7373572c48af126f560148e06892c48f2fe353aa
5
5
  SHA512:
6
- metadata.gz: cacd70750bf920553734551fec81420241257a32615ca565fc636be414e5ea392d48a09641501145026bd2ae6a68ace047dcc8b8e9fb5ec217fbae95c8e5be9c
7
- data.tar.gz: d8f6aaa97d55e6c925022a3e78a2eb9baa17a4885108fbaa3aa3b13db155389289cd6bfb0157aebe107ee4a718e6406546c6548b2e45c884892c115fced65dae
6
+ metadata.gz: 9144ae1fb1812f6fa540c2e67b2006c75c66c4d528eae92956632172ebebb7179be128b05a2490c8764ad6e55184d5c0b319610677159e45a10c397a29830dfb
7
+ data.tar.gz: 6b58b9d2ea5d8fb225549a2e2336bb59aadfbb851c868b8c151778ed04313a3b16df44b6bdbeb80546fbbe24d338d9321e1b8cbfbead93f599037ba8655f9994
@@ -43,6 +43,6 @@ require_relative 'aws-sdk-lambda/customizations'
43
43
  # @service
44
44
  module Aws::Lambda
45
45
 
46
- GEM_VERSION = '1.32.0'
46
+ GEM_VERSION = '1.33.0'
47
47
 
48
48
  end
@@ -338,8 +338,8 @@ module Aws::Lambda
338
338
  # without specifying the source, other accounts could potentially
339
339
  # configure resources in their account to invoke your Lambda function.
340
340
  #
341
- # This action adds a statement to a resource-based permission policy for
342
- # the function. For more information about function policies, see
341
+ # This action adds a statement to a resource-based permissions policy
342
+ # for the function. For more information about function policies, see
343
343
  # [Lambda Function Policies][1].
344
344
  #
345
345
  #
@@ -541,17 +541,32 @@ module Aws::Lambda
541
541
  #
542
542
  # For details about each event source type, see the following topics.
543
543
  #
544
- # * [Using AWS Lambda with Amazon Kinesis][1]
544
+ # * [Using AWS Lambda with Amazon DynamoDB][1]
545
545
  #
546
- # * [Using AWS Lambda with Amazon SQS][2]
546
+ # * [Using AWS Lambda with Amazon Kinesis][2]
547
547
  #
548
- # * [Using AWS Lambda with Amazon DynamoDB][3]
548
+ # * [Using AWS Lambda with Amazon SQS][3]
549
549
  #
550
+ # The following error handling options are only available for stream
551
+ # sources (DynamoDB and Kinesis):
550
552
  #
553
+ # * `BisectBatchOnFunctionError` - If the function returns an error,
554
+ # split the batch in two and retry.
551
555
  #
552
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html
553
- # [2]: https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html
554
- # [3]: https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html
556
+ # * `DestinationConfig` - Send discarded records to an Amazon SQS queue
557
+ # or Amazon SNS topic.
558
+ #
559
+ # * `MaximumRecordAgeInSeconds` - Discard records older than the
560
+ # specified age.
561
+ #
562
+ # * `MaximumRetryAttempts` - Discard records after the specified number
563
+ # of retries.
564
+ #
565
+ #
566
+ #
567
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html
568
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html
569
+ # [3]: https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html
555
570
  #
556
571
  # @option params [required, String] :event_source_arn
557
572
  # The Amazon Resource Name (ARN) of the event source.
@@ -594,6 +609,12 @@ module Aws::Lambda
594
609
  # * **Amazon Simple Queue Service** - Default 10. Max 10.
595
610
  #
596
611
  # @option params [Integer] :maximum_batching_window_in_seconds
612
+ # The maximum amount of time to gather records before invoking the
613
+ # function, in seconds.
614
+ #
615
+ # @option params [Integer] :parallelization_factor
616
+ # (Streams) The number of batches to process from each shard
617
+ # concurrently.
597
618
  #
598
619
  # @option params [String] :starting_position
599
620
  # The position in a stream from which to start reading. Required for
@@ -604,17 +625,38 @@ module Aws::Lambda
604
625
  # With `StartingPosition` set to `AT_TIMESTAMP`, the time from which to
605
626
  # start reading.
606
627
  #
628
+ # @option params [Types::DestinationConfig] :destination_config
629
+ # (Streams) An Amazon SQS queue or Amazon SNS topic destination for
630
+ # discarded records.
631
+ #
632
+ # @option params [Integer] :maximum_record_age_in_seconds
633
+ # (Streams) The maximum age of a record that Lambda sends to a function
634
+ # for processing.
635
+ #
636
+ # @option params [Boolean] :bisect_batch_on_function_error
637
+ # (Streams) If the function returns an error, split the batch in two and
638
+ # retry.
639
+ #
640
+ # @option params [Integer] :maximum_retry_attempts
641
+ # (Streams) The maximum number of times to retry when the function
642
+ # returns an error.
643
+ #
607
644
  # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
608
645
  #
609
646
  # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
610
647
  # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
611
648
  # * {Types::EventSourceMappingConfiguration#maximum_batching_window_in_seconds #maximum_batching_window_in_seconds} => Integer
649
+ # * {Types::EventSourceMappingConfiguration#parallelization_factor #parallelization_factor} => Integer
612
650
  # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
613
651
  # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
614
652
  # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
615
653
  # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
616
654
  # * {Types::EventSourceMappingConfiguration#state #state} => String
617
655
  # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
656
+ # * {Types::EventSourceMappingConfiguration#destination_config #destination_config} => Types::DestinationConfig
657
+ # * {Types::EventSourceMappingConfiguration#maximum_record_age_in_seconds #maximum_record_age_in_seconds} => Integer
658
+ # * {Types::EventSourceMappingConfiguration#bisect_batch_on_function_error #bisect_batch_on_function_error} => Boolean
659
+ # * {Types::EventSourceMappingConfiguration#maximum_retry_attempts #maximum_retry_attempts} => Integer
618
660
  #
619
661
  # @example Request syntax with placeholder values
620
662
  #
@@ -624,8 +666,20 @@ module Aws::Lambda
624
666
  # enabled: false,
625
667
  # batch_size: 1,
626
668
  # maximum_batching_window_in_seconds: 1,
669
+ # parallelization_factor: 1,
627
670
  # starting_position: "TRIM_HORIZON", # accepts TRIM_HORIZON, LATEST, AT_TIMESTAMP
628
671
  # starting_position_timestamp: Time.now,
672
+ # destination_config: {
673
+ # on_success: {
674
+ # destination: "DestinationArn",
675
+ # },
676
+ # on_failure: {
677
+ # destination: "DestinationArn",
678
+ # },
679
+ # },
680
+ # maximum_record_age_in_seconds: 1,
681
+ # bisect_batch_on_function_error: false,
682
+ # maximum_retry_attempts: 1,
629
683
  # })
630
684
  #
631
685
  # @example Response structure
@@ -633,12 +687,18 @@ module Aws::Lambda
633
687
  # resp.uuid #=> String
634
688
  # resp.batch_size #=> Integer
635
689
  # resp.maximum_batching_window_in_seconds #=> Integer
690
+ # resp.parallelization_factor #=> Integer
636
691
  # resp.event_source_arn #=> String
637
692
  # resp.function_arn #=> String
638
693
  # resp.last_modified #=> Time
639
694
  # resp.last_processing_result #=> String
640
695
  # resp.state #=> String
641
696
  # resp.state_transition_reason #=> String
697
+ # resp.destination_config.on_success.destination #=> String
698
+ # resp.destination_config.on_failure.destination #=> String
699
+ # resp.maximum_record_age_in_seconds #=> Integer
700
+ # resp.bisect_batch_on_function_error #=> Boolean
701
+ # resp.maximum_retry_attempts #=> Integer
642
702
  #
643
703
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping AWS API Documentation
644
704
  #
@@ -655,6 +715,14 @@ module Aws::Lambda
655
715
  # function permission to use AWS services, such as Amazon CloudWatch
656
716
  # Logs for log streaming and AWS X-Ray for request tracing.
657
717
  #
718
+ # When you create a function, Lambda provisions an instance of the
719
+ # function and its supporting resources. If your function connects to a
720
+ # VPC, this process can take a minute or so. During this time, you
721
+ # can't invoke or modify the function. The `State`, `StateReason`, and
722
+ # `StateReasonCode` fields in the response from GetFunctionConfiguration
723
+ # indicate when the function is ready to invoke. For more information,
724
+ # see [Function States][3].
725
+ #
658
726
  # A function has an unpublished version, and can have published versions
659
727
  # and aliases. The unpublished version changes when you update your
660
728
  # function's code and configuration. A published version is a snapshot
@@ -678,13 +746,14 @@ module Aws::Lambda
678
746
  # To invoke your function directly, use Invoke. To invoke your function
679
747
  # in response to events in other AWS services, create an event source
680
748
  # mapping (CreateEventSourceMapping), or configure a function trigger in
681
- # the other service. For more information, see [Invoking Functions][3].
749
+ # the other service. For more information, see [Invoking Functions][4].
682
750
  #
683
751
  #
684
752
  #
685
753
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/deployment-package-v2.html
686
754
  # [2]: https://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role
687
- # [3]: https://docs.aws.amazon.com/lambda/latest/dg/invoking-lambda-functions.html
755
+ # [3]: https://docs.aws.amazon.com/lambda/latest/dg/functions-states.html
756
+ # [4]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-invocation.html
688
757
  #
689
758
  # @option params [required, String] :function_name
690
759
  # The name of the Lambda function.
@@ -749,7 +818,7 @@ module Aws::Lambda
749
818
  #
750
819
  #
751
820
  #
752
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/vpc.html
821
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html
753
822
  #
754
823
  # @option params [Types::DeadLetterConfig] :dead_letter_config
755
824
  # A dead letter queue configuration that specifies the queue or topic
@@ -758,7 +827,7 @@ module Aws::Lambda
758
827
  #
759
828
  #
760
829
  #
761
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/dlq.html
830
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq
762
831
  #
763
832
  # @option params [Types::Environment] :environment
764
833
  # Environment variables that are accessible from function code during
@@ -810,6 +879,12 @@ module Aws::Lambda
810
879
  # * {Types::FunctionConfiguration#master_arn #master_arn} => String
811
880
  # * {Types::FunctionConfiguration#revision_id #revision_id} => String
812
881
  # * {Types::FunctionConfiguration#layers #layers} => Array<Types::Layer>
882
+ # * {Types::FunctionConfiguration#state #state} => String
883
+ # * {Types::FunctionConfiguration#state_reason #state_reason} => String
884
+ # * {Types::FunctionConfiguration#state_reason_code #state_reason_code} => String
885
+ # * {Types::FunctionConfiguration#last_update_status #last_update_status} => String
886
+ # * {Types::FunctionConfiguration#last_update_status_reason #last_update_status_reason} => String
887
+ # * {Types::FunctionConfiguration#last_update_status_reason_code #last_update_status_reason_code} => String
813
888
  #
814
889
  #
815
890
  # @example Example: create-function
@@ -919,6 +994,12 @@ module Aws::Lambda
919
994
  # resp.layers #=> Array
920
995
  # resp.layers[0].arn #=> String
921
996
  # resp.layers[0].code_size #=> Integer
997
+ # resp.state #=> String, one of "Pending", "Active", "Inactive", "Failed"
998
+ # resp.state_reason #=> String
999
+ # resp.state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
1000
+ # resp.last_update_status #=> String, one of "Successful", "Failed", "InProgress"
1001
+ # resp.last_update_status_reason #=> String
1002
+ # resp.last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
922
1003
  #
923
1004
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateFunction AWS API Documentation
924
1005
  #
@@ -984,6 +1065,9 @@ module Aws::Lambda
984
1065
  # Deletes an [event source mapping][1]. You can get the identifier of a
985
1066
  # mapping from the output of ListEventSourceMappings.
986
1067
  #
1068
+ # When you delete an event source mapping, it enters a `Deleting` state
1069
+ # and might not be completely deleted for several seconds.
1070
+ #
987
1071
  #
988
1072
  #
989
1073
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/intro-invocation-modes.html
@@ -996,12 +1080,17 @@ module Aws::Lambda
996
1080
  # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
997
1081
  # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
998
1082
  # * {Types::EventSourceMappingConfiguration#maximum_batching_window_in_seconds #maximum_batching_window_in_seconds} => Integer
1083
+ # * {Types::EventSourceMappingConfiguration#parallelization_factor #parallelization_factor} => Integer
999
1084
  # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
1000
1085
  # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
1001
1086
  # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
1002
1087
  # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
1003
1088
  # * {Types::EventSourceMappingConfiguration#state #state} => String
1004
1089
  # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
1090
+ # * {Types::EventSourceMappingConfiguration#destination_config #destination_config} => Types::DestinationConfig
1091
+ # * {Types::EventSourceMappingConfiguration#maximum_record_age_in_seconds #maximum_record_age_in_seconds} => Integer
1092
+ # * {Types::EventSourceMappingConfiguration#bisect_batch_on_function_error #bisect_batch_on_function_error} => Boolean
1093
+ # * {Types::EventSourceMappingConfiguration#maximum_retry_attempts #maximum_retry_attempts} => Integer
1005
1094
  #
1006
1095
  #
1007
1096
  # @example Example: To delete a Lambda function event source mapping
@@ -1035,12 +1124,18 @@ module Aws::Lambda
1035
1124
  # resp.uuid #=> String
1036
1125
  # resp.batch_size #=> Integer
1037
1126
  # resp.maximum_batching_window_in_seconds #=> Integer
1127
+ # resp.parallelization_factor #=> Integer
1038
1128
  # resp.event_source_arn #=> String
1039
1129
  # resp.function_arn #=> String
1040
1130
  # resp.last_modified #=> Time
1041
1131
  # resp.last_processing_result #=> String
1042
1132
  # resp.state #=> String
1043
1133
  # resp.state_transition_reason #=> String
1134
+ # resp.destination_config.on_success.destination #=> String
1135
+ # resp.destination_config.on_failure.destination #=> String
1136
+ # resp.maximum_record_age_in_seconds #=> Integer
1137
+ # resp.bisect_batch_on_function_error #=> Boolean
1138
+ # resp.maximum_retry_attempts #=> Integer
1044
1139
  #
1045
1140
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping AWS API Documentation
1046
1141
  #
@@ -1143,6 +1238,50 @@ module Aws::Lambda
1143
1238
  req.send_request(options)
1144
1239
  end
1145
1240
 
1241
+ # Deletes the configuration for asynchronous invocation for a function,
1242
+ # version, or alias.
1243
+ #
1244
+ # To configure options for asynchronous invocation, use
1245
+ # PutFunctionEventInvokeConfig.
1246
+ #
1247
+ # @option params [required, String] :function_name
1248
+ # The name of the Lambda function, version, or alias.
1249
+ #
1250
+ # **Name formats**
1251
+ #
1252
+ # * **Function name** - `my-function` (name-only), `my-function:v1`
1253
+ # (with alias).
1254
+ #
1255
+ # * **Function ARN** -
1256
+ # `arn:aws:lambda:us-west-2:123456789012:function:my-function`.
1257
+ #
1258
+ # * **Partial ARN** - `123456789012:function:my-function`.
1259
+ #
1260
+ # You can append a version number or alias to any of the formats. The
1261
+ # length constraint applies only to the full ARN. If you specify only
1262
+ # the function name, it is limited to 64 characters in length.
1263
+ #
1264
+ # @option params [String] :qualifier
1265
+ # A version number or alias name.
1266
+ #
1267
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1268
+ #
1269
+ # @example Request syntax with placeholder values
1270
+ #
1271
+ # resp = client.delete_function_event_invoke_config({
1272
+ # function_name: "FunctionName", # required
1273
+ # qualifier: "Qualifier",
1274
+ # })
1275
+ #
1276
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionEventInvokeConfig AWS API Documentation
1277
+ #
1278
+ # @overload delete_function_event_invoke_config(params = {})
1279
+ # @param [Hash] params ({})
1280
+ def delete_function_event_invoke_config(params = {}, options = {})
1281
+ req = build_request(:delete_function_event_invoke_config, params)
1282
+ req.send_request(options)
1283
+ end
1284
+
1146
1285
  # Deletes a version of an [AWS Lambda layer][1]. Deleted versions can no
1147
1286
  # longer be viewed or added to functions. To avoid breaking functions, a
1148
1287
  # copy of the version remains in Lambda until no functions refer to it.
@@ -1310,12 +1449,17 @@ module Aws::Lambda
1310
1449
  # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
1311
1450
  # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
1312
1451
  # * {Types::EventSourceMappingConfiguration#maximum_batching_window_in_seconds #maximum_batching_window_in_seconds} => Integer
1452
+ # * {Types::EventSourceMappingConfiguration#parallelization_factor #parallelization_factor} => Integer
1313
1453
  # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
1314
1454
  # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
1315
1455
  # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
1316
1456
  # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
1317
1457
  # * {Types::EventSourceMappingConfiguration#state #state} => String
1318
1458
  # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
1459
+ # * {Types::EventSourceMappingConfiguration#destination_config #destination_config} => Types::DestinationConfig
1460
+ # * {Types::EventSourceMappingConfiguration#maximum_record_age_in_seconds #maximum_record_age_in_seconds} => Integer
1461
+ # * {Types::EventSourceMappingConfiguration#bisect_batch_on_function_error #bisect_batch_on_function_error} => Boolean
1462
+ # * {Types::EventSourceMappingConfiguration#maximum_retry_attempts #maximum_retry_attempts} => Integer
1319
1463
  #
1320
1464
  #
1321
1465
  # @example Example: To retrieve a Lambda function's event source mapping
@@ -1349,12 +1493,18 @@ module Aws::Lambda
1349
1493
  # resp.uuid #=> String
1350
1494
  # resp.batch_size #=> Integer
1351
1495
  # resp.maximum_batching_window_in_seconds #=> Integer
1496
+ # resp.parallelization_factor #=> Integer
1352
1497
  # resp.event_source_arn #=> String
1353
1498
  # resp.function_arn #=> String
1354
1499
  # resp.last_modified #=> Time
1355
1500
  # resp.last_processing_result #=> String
1356
1501
  # resp.state #=> String
1357
1502
  # resp.state_transition_reason #=> String
1503
+ # resp.destination_config.on_success.destination #=> String
1504
+ # resp.destination_config.on_failure.destination #=> String
1505
+ # resp.maximum_record_age_in_seconds #=> Integer
1506
+ # resp.bisect_batch_on_function_error #=> Boolean
1507
+ # resp.maximum_retry_attempts #=> Integer
1358
1508
  #
1359
1509
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping AWS API Documentation
1360
1510
  #
@@ -1479,6 +1629,12 @@ module Aws::Lambda
1479
1629
  # resp.configuration.layers #=> Array
1480
1630
  # resp.configuration.layers[0].arn #=> String
1481
1631
  # resp.configuration.layers[0].code_size #=> Integer
1632
+ # resp.configuration.state #=> String, one of "Pending", "Active", "Inactive", "Failed"
1633
+ # resp.configuration.state_reason #=> String
1634
+ # resp.configuration.state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
1635
+ # resp.configuration.last_update_status #=> String, one of "Successful", "Failed", "InProgress"
1636
+ # resp.configuration.last_update_status_reason #=> String
1637
+ # resp.configuration.last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
1482
1638
  # resp.code.repository_type #=> String
1483
1639
  # resp.code.location #=> String
1484
1640
  # resp.tags #=> Hash
@@ -1544,6 +1700,12 @@ module Aws::Lambda
1544
1700
  # * {Types::FunctionConfiguration#master_arn #master_arn} => String
1545
1701
  # * {Types::FunctionConfiguration#revision_id #revision_id} => String
1546
1702
  # * {Types::FunctionConfiguration#layers #layers} => Array<Types::Layer>
1703
+ # * {Types::FunctionConfiguration#state #state} => String
1704
+ # * {Types::FunctionConfiguration#state_reason #state_reason} => String
1705
+ # * {Types::FunctionConfiguration#state_reason_code #state_reason_code} => String
1706
+ # * {Types::FunctionConfiguration#last_update_status #last_update_status} => String
1707
+ # * {Types::FunctionConfiguration#last_update_status_reason #last_update_status_reason} => String
1708
+ # * {Types::FunctionConfiguration#last_update_status_reason_code #last_update_status_reason_code} => String
1547
1709
  #
1548
1710
  #
1549
1711
  # @example Example: To retrieve a Lambda function's event source mapping
@@ -1616,6 +1778,12 @@ module Aws::Lambda
1616
1778
  # resp.layers #=> Array
1617
1779
  # resp.layers[0].arn #=> String
1618
1780
  # resp.layers[0].code_size #=> Integer
1781
+ # resp.state #=> String, one of "Pending", "Active", "Inactive", "Failed"
1782
+ # resp.state_reason #=> String
1783
+ # resp.state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
1784
+ # resp.last_update_status #=> String, one of "Successful", "Failed", "InProgress"
1785
+ # resp.last_update_status_reason #=> String
1786
+ # resp.last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
1619
1787
  #
1620
1788
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConfiguration AWS API Documentation
1621
1789
  #
@@ -1626,6 +1794,65 @@ module Aws::Lambda
1626
1794
  req.send_request(options)
1627
1795
  end
1628
1796
 
1797
+ # Retrieves the configuration for asynchronous invocation for a
1798
+ # function, version, or alias.
1799
+ #
1800
+ # To configure options for asynchronous invocation, use
1801
+ # PutFunctionEventInvokeConfig.
1802
+ #
1803
+ # @option params [required, String] :function_name
1804
+ # The name of the Lambda function, version, or alias.
1805
+ #
1806
+ # **Name formats**
1807
+ #
1808
+ # * **Function name** - `my-function` (name-only), `my-function:v1`
1809
+ # (with alias).
1810
+ #
1811
+ # * **Function ARN** -
1812
+ # `arn:aws:lambda:us-west-2:123456789012:function:my-function`.
1813
+ #
1814
+ # * **Partial ARN** - `123456789012:function:my-function`.
1815
+ #
1816
+ # You can append a version number or alias to any of the formats. The
1817
+ # length constraint applies only to the full ARN. If you specify only
1818
+ # the function name, it is limited to 64 characters in length.
1819
+ #
1820
+ # @option params [String] :qualifier
1821
+ # A version number or alias name.
1822
+ #
1823
+ # @return [Types::FunctionEventInvokeConfig] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1824
+ #
1825
+ # * {Types::FunctionEventInvokeConfig#last_modified #last_modified} => Time
1826
+ # * {Types::FunctionEventInvokeConfig#function_arn #function_arn} => String
1827
+ # * {Types::FunctionEventInvokeConfig#maximum_retry_attempts #maximum_retry_attempts} => Integer
1828
+ # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
1829
+ # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
1830
+ #
1831
+ # @example Request syntax with placeholder values
1832
+ #
1833
+ # resp = client.get_function_event_invoke_config({
1834
+ # function_name: "FunctionName", # required
1835
+ # qualifier: "Qualifier",
1836
+ # })
1837
+ #
1838
+ # @example Response structure
1839
+ #
1840
+ # resp.last_modified #=> Time
1841
+ # resp.function_arn #=> String
1842
+ # resp.maximum_retry_attempts #=> Integer
1843
+ # resp.maximum_event_age_in_seconds #=> Integer
1844
+ # resp.destination_config.on_success.destination #=> String
1845
+ # resp.destination_config.on_failure.destination #=> String
1846
+ #
1847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionEventInvokeConfig AWS API Documentation
1848
+ #
1849
+ # @overload get_function_event_invoke_config(params = {})
1850
+ # @param [Hash] params ({})
1851
+ def get_function_event_invoke_config(params = {}, options = {})
1852
+ req = build_request(:get_function_event_invoke_config, params)
1853
+ req.send_request(options)
1854
+ end
1855
+
1629
1856
  # Returns information about a version of an [AWS Lambda layer][1], with
1630
1857
  # a link to download the layer archive that's valid for 10 minutes.
1631
1858
  #
@@ -1841,22 +2068,27 @@ module Aws::Lambda
1841
2068
  # (and wait for the response), or asynchronously. To invoke a function
1842
2069
  # asynchronously, set `InvocationType` to `Event`.
1843
2070
  #
1844
- # For synchronous invocation, details about the function response,
2071
+ # For [synchronous invocation][1], details about the function response,
1845
2072
  # including errors, are included in the response body and headers. For
1846
2073
  # either invocation type, you can find more information in the
1847
- # [execution log][1] and [trace][2]. To record function errors for
1848
- # asynchronous invocations, configure your function with a [dead letter
1849
- # queue][2].
2074
+ # [execution log][2] and [trace][3].
1850
2075
  #
1851
2076
  # When an error occurs, your function may be invoked multiple times.
1852
2077
  # Retry behavior varies by error type, client, event source, and
1853
2078
  # invocation type. For example, if you invoke a function asynchronously
1854
2079
  # and it returns an error, Lambda executes the function up to two more
1855
- # times. For more information, see [Retry Behavior][3].
2080
+ # times. For more information, see [Retry Behavior][4].
2081
+ #
2082
+ # For [asynchronous invocation][5], Lambda adds events to a queue before
2083
+ # sending them to your function. If your function does not have enough
2084
+ # capacity to keep up with the queue, events may be lost. Occasionally,
2085
+ # your function may receive the same event multiple times, even if no
2086
+ # error occurs. To retain events that were not processed, configure your
2087
+ # function with a [dead-letter queue][6].
1856
2088
  #
1857
2089
  # The status code in the API response doesn't reflect function errors.
1858
2090
  # Error codes are reserved for errors that prevent your function from
1859
- # executing, such as permissions errors, [limit errors][4], or issues
2091
+ # executing, such as permissions errors, [limit errors][7], or issues
1860
2092
  # with your function's code and configuration. For example, Lambda
1861
2093
  # returns `TooManyRequestsException` if executing the function would
1862
2094
  # cause you to exceed a concurrency limit at either the account level
@@ -1873,10 +2105,13 @@ module Aws::Lambda
1873
2105
  #
1874
2106
  #
1875
2107
  #
1876
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions.html
1877
- # [2]: https://docs.aws.amazon.com/lambda/latest/dg/dlq.html
1878
- # [3]: https://docs.aws.amazon.com/lambda/latest/dg/retries-on-errors.html
1879
- # [4]: https://docs.aws.amazon.com/lambda/latest/dg/limits.html
2108
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-sync.html
2109
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions.html
2110
+ # [3]: https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html
2111
+ # [4]: https://docs.aws.amazon.com/lambda/latest/dg/retries-on-errors.html
2112
+ # [5]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html
2113
+ # [6]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq
2114
+ # [7]: https://docs.aws.amazon.com/lambda/latest/dg/limits.html
1880
2115
  #
1881
2116
  # @option params [required, String] :function_name
1882
2117
  # The name of the Lambda function, version, or alias.
@@ -2187,12 +2422,18 @@ module Aws::Lambda
2187
2422
  # resp.event_source_mappings[0].uuid #=> String
2188
2423
  # resp.event_source_mappings[0].batch_size #=> Integer
2189
2424
  # resp.event_source_mappings[0].maximum_batching_window_in_seconds #=> Integer
2425
+ # resp.event_source_mappings[0].parallelization_factor #=> Integer
2190
2426
  # resp.event_source_mappings[0].event_source_arn #=> String
2191
2427
  # resp.event_source_mappings[0].function_arn #=> String
2192
2428
  # resp.event_source_mappings[0].last_modified #=> Time
2193
2429
  # resp.event_source_mappings[0].last_processing_result #=> String
2194
2430
  # resp.event_source_mappings[0].state #=> String
2195
2431
  # resp.event_source_mappings[0].state_transition_reason #=> String
2432
+ # resp.event_source_mappings[0].destination_config.on_success.destination #=> String
2433
+ # resp.event_source_mappings[0].destination_config.on_failure.destination #=> String
2434
+ # resp.event_source_mappings[0].maximum_record_age_in_seconds #=> Integer
2435
+ # resp.event_source_mappings[0].bisect_batch_on_function_error #=> Boolean
2436
+ # resp.event_source_mappings[0].maximum_retry_attempts #=> Integer
2196
2437
  #
2197
2438
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings AWS API Documentation
2198
2439
  #
@@ -2203,6 +2444,67 @@ module Aws::Lambda
2203
2444
  req.send_request(options)
2204
2445
  end
2205
2446
 
2447
+ # Retrieves a list of configurations for asynchronous invocation for a
2448
+ # function.
2449
+ #
2450
+ # To configure options for asynchronous invocation, use
2451
+ # PutFunctionEventInvokeConfig.
2452
+ #
2453
+ # @option params [required, String] :function_name
2454
+ # The name of the Lambda function.
2455
+ #
2456
+ # **Name formats**
2457
+ #
2458
+ # * **Function name** - `my-function`.
2459
+ #
2460
+ # * **Function ARN** -
2461
+ # `arn:aws:lambda:us-west-2:123456789012:function:my-function`.
2462
+ #
2463
+ # * **Partial ARN** - `123456789012:function:my-function`.
2464
+ #
2465
+ # The length constraint applies only to the full ARN. If you specify
2466
+ # only the function name, it is limited to 64 characters in length.
2467
+ #
2468
+ # @option params [String] :marker
2469
+ # Specify the pagination token that's returned by a previous request to
2470
+ # retrieve the next page of results.
2471
+ #
2472
+ # @option params [Integer] :max_items
2473
+ # The maximum number of configurations to return.
2474
+ #
2475
+ # @return [Types::ListFunctionEventInvokeConfigsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2476
+ #
2477
+ # * {Types::ListFunctionEventInvokeConfigsResponse#function_event_invoke_configs #function_event_invoke_configs} => Array<Types::FunctionEventInvokeConfig>
2478
+ # * {Types::ListFunctionEventInvokeConfigsResponse#next_marker #next_marker} => String
2479
+ #
2480
+ # @example Request syntax with placeholder values
2481
+ #
2482
+ # resp = client.list_function_event_invoke_configs({
2483
+ # function_name: "FunctionName", # required
2484
+ # marker: "String",
2485
+ # max_items: 1,
2486
+ # })
2487
+ #
2488
+ # @example Response structure
2489
+ #
2490
+ # resp.function_event_invoke_configs #=> Array
2491
+ # resp.function_event_invoke_configs[0].last_modified #=> Time
2492
+ # resp.function_event_invoke_configs[0].function_arn #=> String
2493
+ # resp.function_event_invoke_configs[0].maximum_retry_attempts #=> Integer
2494
+ # resp.function_event_invoke_configs[0].maximum_event_age_in_seconds #=> Integer
2495
+ # resp.function_event_invoke_configs[0].destination_config.on_success.destination #=> String
2496
+ # resp.function_event_invoke_configs[0].destination_config.on_failure.destination #=> String
2497
+ # resp.next_marker #=> String
2498
+ #
2499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctionEventInvokeConfigs AWS API Documentation
2500
+ #
2501
+ # @overload list_function_event_invoke_configs(params = {})
2502
+ # @param [Hash] params ({})
2503
+ def list_function_event_invoke_configs(params = {}, options = {})
2504
+ req = build_request(:list_function_event_invoke_configs, params)
2505
+ req.send_request(options)
2506
+ end
2507
+
2206
2508
  # Returns a list of Lambda functions, with the version-specific
2207
2509
  # configuration of each.
2208
2510
  #
@@ -2291,6 +2593,12 @@ module Aws::Lambda
2291
2593
  # resp.functions[0].layers #=> Array
2292
2594
  # resp.functions[0].layers[0].arn #=> String
2293
2595
  # resp.functions[0].layers[0].code_size #=> Integer
2596
+ # resp.functions[0].state #=> String, one of "Pending", "Active", "Inactive", "Failed"
2597
+ # resp.functions[0].state_reason #=> String
2598
+ # resp.functions[0].state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
2599
+ # resp.functions[0].last_update_status #=> String, one of "Successful", "Failed", "InProgress"
2600
+ # resp.functions[0].last_update_status_reason #=> String
2601
+ # resp.functions[0].last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
2294
2602
  #
2295
2603
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctions AWS API Documentation
2296
2604
  #
@@ -2539,6 +2847,12 @@ module Aws::Lambda
2539
2847
  # resp.versions[0].layers #=> Array
2540
2848
  # resp.versions[0].layers[0].arn #=> String
2541
2849
  # resp.versions[0].layers[0].code_size #=> Integer
2850
+ # resp.versions[0].state #=> String, one of "Pending", "Active", "Inactive", "Failed"
2851
+ # resp.versions[0].state_reason #=> String
2852
+ # resp.versions[0].state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
2853
+ # resp.versions[0].last_update_status #=> String, one of "Successful", "Failed", "InProgress"
2854
+ # resp.versions[0].last_update_status_reason #=> String
2855
+ # resp.versions[0].last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
2542
2856
  #
2543
2857
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListVersionsByFunction AWS API Documentation
2544
2858
  #
@@ -2550,8 +2864,8 @@ module Aws::Lambda
2550
2864
  end
2551
2865
 
2552
2866
  # Creates an [AWS Lambda layer][1] from a ZIP archive. Each time you
2553
- # call `PublishLayerVersion` with the same version name, a new version
2554
- # is created.
2867
+ # call `PublishLayerVersion` with the same layer name, a new version is
2868
+ # created.
2555
2869
  #
2556
2870
  # Add layers to your function with CreateFunction or
2557
2871
  # UpdateFunctionConfiguration.
@@ -2709,6 +3023,12 @@ module Aws::Lambda
2709
3023
  # * {Types::FunctionConfiguration#master_arn #master_arn} => String
2710
3024
  # * {Types::FunctionConfiguration#revision_id #revision_id} => String
2711
3025
  # * {Types::FunctionConfiguration#layers #layers} => Array<Types::Layer>
3026
+ # * {Types::FunctionConfiguration#state #state} => String
3027
+ # * {Types::FunctionConfiguration#state_reason #state_reason} => String
3028
+ # * {Types::FunctionConfiguration#state_reason_code #state_reason_code} => String
3029
+ # * {Types::FunctionConfiguration#last_update_status #last_update_status} => String
3030
+ # * {Types::FunctionConfiguration#last_update_status_reason #last_update_status_reason} => String
3031
+ # * {Types::FunctionConfiguration#last_update_status_reason_code #last_update_status_reason_code} => String
2712
3032
  #
2713
3033
  #
2714
3034
  # @example Example: To publish a version of a Lambda function
@@ -2779,6 +3099,12 @@ module Aws::Lambda
2779
3099
  # resp.layers #=> Array
2780
3100
  # resp.layers[0].arn #=> String
2781
3101
  # resp.layers[0].code_size #=> Integer
3102
+ # resp.state #=> String, one of "Pending", "Active", "Inactive", "Failed"
3103
+ # resp.state_reason #=> String
3104
+ # resp.state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
3105
+ # resp.last_update_status #=> String, one of "Successful", "Failed", "InProgress"
3106
+ # resp.last_update_status_reason #=> String
3107
+ # resp.last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
2782
3108
  #
2783
3109
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishVersion AWS API Documentation
2784
3110
  #
@@ -2850,6 +3176,105 @@ module Aws::Lambda
2850
3176
  req.send_request(options)
2851
3177
  end
2852
3178
 
3179
+ # Configures options for [asynchronous invocation][1] on a function,
3180
+ # version, or alias.
3181
+ #
3182
+ # By default, Lambda retries an asynchronous invocation twice if the
3183
+ # function returns an error. It retains events in a queue for up to six
3184
+ # hours. When an event fails all processing attempts or stays in the
3185
+ # asynchronous invocation queue for too long, Lambda discards it. To
3186
+ # retain discarded events, configure a dead-letter queue with
3187
+ # UpdateFunctionConfiguration.
3188
+ #
3189
+ #
3190
+ #
3191
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html
3192
+ #
3193
+ # @option params [required, String] :function_name
3194
+ # The name of the Lambda function, version, or alias.
3195
+ #
3196
+ # **Name formats**
3197
+ #
3198
+ # * **Function name** - `my-function` (name-only), `my-function:v1`
3199
+ # (with alias).
3200
+ #
3201
+ # * **Function ARN** -
3202
+ # `arn:aws:lambda:us-west-2:123456789012:function:my-function`.
3203
+ #
3204
+ # * **Partial ARN** - `123456789012:function:my-function`.
3205
+ #
3206
+ # You can append a version number or alias to any of the formats. The
3207
+ # length constraint applies only to the full ARN. If you specify only
3208
+ # the function name, it is limited to 64 characters in length.
3209
+ #
3210
+ # @option params [String] :qualifier
3211
+ # A version number or alias name.
3212
+ #
3213
+ # @option params [Integer] :maximum_retry_attempts
3214
+ # The maximum number of times to retry when the function returns an
3215
+ # error.
3216
+ #
3217
+ # @option params [Integer] :maximum_event_age_in_seconds
3218
+ # The maximum age of a request that Lambda sends to a function for
3219
+ # processing.
3220
+ #
3221
+ # @option params [Types::DestinationConfig] :destination_config
3222
+ # A destination for events after they have been sent to a function for
3223
+ # processing.
3224
+ #
3225
+ # **Destinations**
3226
+ #
3227
+ # * **Function** - The Amazon Resource Name (ARN) of a Lambda function.
3228
+ #
3229
+ # * **Queue** - The ARN of an SQS queue.
3230
+ #
3231
+ # * **Topic** - The ARN of an SNS topic.
3232
+ #
3233
+ # * **Event Bus** - The ARN of an Amazon EventBridge event bus.
3234
+ #
3235
+ # @return [Types::FunctionEventInvokeConfig] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3236
+ #
3237
+ # * {Types::FunctionEventInvokeConfig#last_modified #last_modified} => Time
3238
+ # * {Types::FunctionEventInvokeConfig#function_arn #function_arn} => String
3239
+ # * {Types::FunctionEventInvokeConfig#maximum_retry_attempts #maximum_retry_attempts} => Integer
3240
+ # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
3241
+ # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
3242
+ #
3243
+ # @example Request syntax with placeholder values
3244
+ #
3245
+ # resp = client.put_function_event_invoke_config({
3246
+ # function_name: "FunctionName", # required
3247
+ # qualifier: "Qualifier",
3248
+ # maximum_retry_attempts: 1,
3249
+ # maximum_event_age_in_seconds: 1,
3250
+ # destination_config: {
3251
+ # on_success: {
3252
+ # destination: "DestinationArn",
3253
+ # },
3254
+ # on_failure: {
3255
+ # destination: "DestinationArn",
3256
+ # },
3257
+ # },
3258
+ # })
3259
+ #
3260
+ # @example Response structure
3261
+ #
3262
+ # resp.last_modified #=> Time
3263
+ # resp.function_arn #=> String
3264
+ # resp.maximum_retry_attempts #=> Integer
3265
+ # resp.maximum_event_age_in_seconds #=> Integer
3266
+ # resp.destination_config.on_success.destination #=> String
3267
+ # resp.destination_config.on_failure.destination #=> String
3268
+ #
3269
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionEventInvokeConfig AWS API Documentation
3270
+ #
3271
+ # @overload put_function_event_invoke_config(params = {})
3272
+ # @param [Hash] params ({})
3273
+ def put_function_event_invoke_config(params = {}, options = {})
3274
+ req = build_request(:put_function_event_invoke_config, params)
3275
+ req.send_request(options)
3276
+ end
3277
+
2853
3278
  # Removes a statement from the permissions policy for a version of an
2854
3279
  # [AWS Lambda layer][1]. For more information, see
2855
3280
  # AddLayerVersionPermission.
@@ -3127,6 +3552,21 @@ module Aws::Lambda
3127
3552
  # Lambda invokes, or pause invocation and resume later from the same
3128
3553
  # location.
3129
3554
  #
3555
+ # The following error handling options are only available for stream
3556
+ # sources (DynamoDB and Kinesis):
3557
+ #
3558
+ # * `BisectBatchOnFunctionError` - If the function returns an error,
3559
+ # split the batch in two and retry.
3560
+ #
3561
+ # * `DestinationConfig` - Send discarded records to an Amazon SQS queue
3562
+ # or Amazon SNS topic.
3563
+ #
3564
+ # * `MaximumRecordAgeInSeconds` - Discard records older than the
3565
+ # specified age.
3566
+ #
3567
+ # * `MaximumRetryAttempts` - Discard records after the specified number
3568
+ # of retries.
3569
+ #
3130
3570
  # @option params [required, String] :uuid
3131
3571
  # The identifier of the event source mapping.
3132
3572
  #
@@ -3161,18 +3601,45 @@ module Aws::Lambda
3161
3601
  # * **Amazon Simple Queue Service** - Default 10. Max 10.
3162
3602
  #
3163
3603
  # @option params [Integer] :maximum_batching_window_in_seconds
3604
+ # The maximum amount of time to gather records before invoking the
3605
+ # function, in seconds.
3606
+ #
3607
+ # @option params [Types::DestinationConfig] :destination_config
3608
+ # (Streams) An Amazon SQS queue or Amazon SNS topic destination for
3609
+ # discarded records.
3610
+ #
3611
+ # @option params [Integer] :maximum_record_age_in_seconds
3612
+ # (Streams) The maximum age of a record that Lambda sends to a function
3613
+ # for processing.
3614
+ #
3615
+ # @option params [Boolean] :bisect_batch_on_function_error
3616
+ # (Streams) If the function returns an error, split the batch in two and
3617
+ # retry.
3618
+ #
3619
+ # @option params [Integer] :maximum_retry_attempts
3620
+ # (Streams) The maximum number of times to retry when the function
3621
+ # returns an error.
3622
+ #
3623
+ # @option params [Integer] :parallelization_factor
3624
+ # (Streams) The number of batches to process from each shard
3625
+ # concurrently.
3164
3626
  #
3165
3627
  # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3166
3628
  #
3167
3629
  # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
3168
3630
  # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
3169
3631
  # * {Types::EventSourceMappingConfiguration#maximum_batching_window_in_seconds #maximum_batching_window_in_seconds} => Integer
3632
+ # * {Types::EventSourceMappingConfiguration#parallelization_factor #parallelization_factor} => Integer
3170
3633
  # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
3171
3634
  # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
3172
3635
  # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
3173
3636
  # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
3174
3637
  # * {Types::EventSourceMappingConfiguration#state #state} => String
3175
3638
  # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
3639
+ # * {Types::EventSourceMappingConfiguration#destination_config #destination_config} => Types::DestinationConfig
3640
+ # * {Types::EventSourceMappingConfiguration#maximum_record_age_in_seconds #maximum_record_age_in_seconds} => Integer
3641
+ # * {Types::EventSourceMappingConfiguration#bisect_batch_on_function_error #bisect_batch_on_function_error} => Boolean
3642
+ # * {Types::EventSourceMappingConfiguration#maximum_retry_attempts #maximum_retry_attempts} => Integer
3176
3643
  #
3177
3644
  #
3178
3645
  # @example Example: To update a Lambda function event source mapping
@@ -3206,6 +3673,18 @@ module Aws::Lambda
3206
3673
  # enabled: false,
3207
3674
  # batch_size: 1,
3208
3675
  # maximum_batching_window_in_seconds: 1,
3676
+ # destination_config: {
3677
+ # on_success: {
3678
+ # destination: "DestinationArn",
3679
+ # },
3680
+ # on_failure: {
3681
+ # destination: "DestinationArn",
3682
+ # },
3683
+ # },
3684
+ # maximum_record_age_in_seconds: 1,
3685
+ # bisect_batch_on_function_error: false,
3686
+ # maximum_retry_attempts: 1,
3687
+ # parallelization_factor: 1,
3209
3688
  # })
3210
3689
  #
3211
3690
  # @example Response structure
@@ -3213,12 +3692,18 @@ module Aws::Lambda
3213
3692
  # resp.uuid #=> String
3214
3693
  # resp.batch_size #=> Integer
3215
3694
  # resp.maximum_batching_window_in_seconds #=> Integer
3695
+ # resp.parallelization_factor #=> Integer
3216
3696
  # resp.event_source_arn #=> String
3217
3697
  # resp.function_arn #=> String
3218
3698
  # resp.last_modified #=> Time
3219
3699
  # resp.last_processing_result #=> String
3220
3700
  # resp.state #=> String
3221
3701
  # resp.state_transition_reason #=> String
3702
+ # resp.destination_config.on_success.destination #=> String
3703
+ # resp.destination_config.on_failure.destination #=> String
3704
+ # resp.maximum_record_age_in_seconds #=> Integer
3705
+ # resp.bisect_batch_on_function_error #=> Boolean
3706
+ # resp.maximum_retry_attempts #=> Integer
3222
3707
  #
3223
3708
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping AWS API Documentation
3224
3709
  #
@@ -3300,6 +3785,12 @@ module Aws::Lambda
3300
3785
  # * {Types::FunctionConfiguration#master_arn #master_arn} => String
3301
3786
  # * {Types::FunctionConfiguration#revision_id #revision_id} => String
3302
3787
  # * {Types::FunctionConfiguration#layers #layers} => Array<Types::Layer>
3788
+ # * {Types::FunctionConfiguration#state #state} => String
3789
+ # * {Types::FunctionConfiguration#state_reason #state_reason} => String
3790
+ # * {Types::FunctionConfiguration#state_reason_code #state_reason_code} => String
3791
+ # * {Types::FunctionConfiguration#last_update_status #last_update_status} => String
3792
+ # * {Types::FunctionConfiguration#last_update_status_reason #last_update_status_reason} => String
3793
+ # * {Types::FunctionConfiguration#last_update_status_reason_code #last_update_status_reason_code} => String
3303
3794
  #
3304
3795
  #
3305
3796
  # @example Example: To update a Lambda function's code
@@ -3377,6 +3868,12 @@ module Aws::Lambda
3377
3868
  # resp.layers #=> Array
3378
3869
  # resp.layers[0].arn #=> String
3379
3870
  # resp.layers[0].code_size #=> Integer
3871
+ # resp.state #=> String, one of "Pending", "Active", "Inactive", "Failed"
3872
+ # resp.state_reason #=> String
3873
+ # resp.state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
3874
+ # resp.last_update_status #=> String, one of "Successful", "Failed", "InProgress"
3875
+ # resp.last_update_status_reason #=> String
3876
+ # resp.last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
3380
3877
  #
3381
3878
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionCode AWS API Documentation
3382
3879
  #
@@ -3389,6 +3886,16 @@ module Aws::Lambda
3389
3886
 
3390
3887
  # Modify the version-specific settings of a Lambda function.
3391
3888
  #
3889
+ # When you update a function, Lambda provisions an instance of the
3890
+ # function and its supporting resources. If your function connects to a
3891
+ # VPC, this process can take a minute. During this time, you can't
3892
+ # modify the function, but you can still invoke it. The
3893
+ # `LastUpdateStatus`, `LastUpdateStatusReason`, and
3894
+ # `LastUpdateStatusReasonCode` fields in the response from
3895
+ # GetFunctionConfiguration indicate when the update is complete and the
3896
+ # function is processing events with the new configuration. For more
3897
+ # information, see [Function States][1].
3898
+ #
3392
3899
  # These settings can vary between versions of a function and are locked
3393
3900
  # when you publish a version. You can't modify the configuration of a
3394
3901
  # published version, only the unpublished version.
@@ -3397,6 +3904,10 @@ module Aws::Lambda
3397
3904
  # grant invoke permissions to an account or AWS service, use
3398
3905
  # AddPermission.
3399
3906
  #
3907
+ #
3908
+ #
3909
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/functions-states.html
3910
+ #
3400
3911
  # @option params [required, String] :function_name
3401
3912
  # The name of the Lambda function.
3402
3913
  #
@@ -3446,7 +3957,7 @@ module Aws::Lambda
3446
3957
  #
3447
3958
  #
3448
3959
  #
3449
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/vpc.html
3960
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html
3450
3961
  #
3451
3962
  # @option params [Types::Environment] :environment
3452
3963
  # Environment variables that are accessible from function code during
@@ -3466,7 +3977,7 @@ module Aws::Lambda
3466
3977
  #
3467
3978
  #
3468
3979
  #
3469
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/dlq.html
3980
+ # [1]: https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq
3470
3981
  #
3471
3982
  # @option params [String] :kms_key_arn
3472
3983
  # The ARN of the AWS Key Management Service (AWS KMS) key that's used
@@ -3512,6 +4023,12 @@ module Aws::Lambda
3512
4023
  # * {Types::FunctionConfiguration#master_arn #master_arn} => String
3513
4024
  # * {Types::FunctionConfiguration#revision_id #revision_id} => String
3514
4025
  # * {Types::FunctionConfiguration#layers #layers} => Array<Types::Layer>
4026
+ # * {Types::FunctionConfiguration#state #state} => String
4027
+ # * {Types::FunctionConfiguration#state_reason #state_reason} => String
4028
+ # * {Types::FunctionConfiguration#state_reason_code #state_reason_code} => String
4029
+ # * {Types::FunctionConfiguration#last_update_status #last_update_status} => String
4030
+ # * {Types::FunctionConfiguration#last_update_status_reason #last_update_status_reason} => String
4031
+ # * {Types::FunctionConfiguration#last_update_status_reason_code #last_update_status_reason_code} => String
3515
4032
  #
3516
4033
  #
3517
4034
  # @example Example: To update a Lambda function's configuration
@@ -3609,6 +4126,12 @@ module Aws::Lambda
3609
4126
  # resp.layers #=> Array
3610
4127
  # resp.layers[0].arn #=> String
3611
4128
  # resp.layers[0].code_size #=> Integer
4129
+ # resp.state #=> String, one of "Pending", "Active", "Inactive", "Failed"
4130
+ # resp.state_reason #=> String
4131
+ # resp.state_reason_code #=> String, one of "Idle", "Creating", "Restoring", "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError", "SubnetOutOfIPAddresses"
4132
+ # resp.last_update_status #=> String, one of "Successful", "Failed", "InProgress"
4133
+ # resp.last_update_status_reason #=> String
4134
+ # resp.last_update_status_reason_code #=> String, one of "EniLimitExceeded", "InsufficientRolePermissions", "InvalidConfiguration", "InternalError"
3612
4135
  #
3613
4136
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionConfiguration AWS API Documentation
3614
4137
  #
@@ -3619,6 +4142,97 @@ module Aws::Lambda
3619
4142
  req.send_request(options)
3620
4143
  end
3621
4144
 
4145
+ # Updates the configuration for asynchronous invocation for a function,
4146
+ # version, or alias.
4147
+ #
4148
+ # To configure options for asynchronous invocation, use
4149
+ # PutFunctionEventInvokeConfig.
4150
+ #
4151
+ # @option params [required, String] :function_name
4152
+ # The name of the Lambda function, version, or alias.
4153
+ #
4154
+ # **Name formats**
4155
+ #
4156
+ # * **Function name** - `my-function` (name-only), `my-function:v1`
4157
+ # (with alias).
4158
+ #
4159
+ # * **Function ARN** -
4160
+ # `arn:aws:lambda:us-west-2:123456789012:function:my-function`.
4161
+ #
4162
+ # * **Partial ARN** - `123456789012:function:my-function`.
4163
+ #
4164
+ # You can append a version number or alias to any of the formats. The
4165
+ # length constraint applies only to the full ARN. If you specify only
4166
+ # the function name, it is limited to 64 characters in length.
4167
+ #
4168
+ # @option params [String] :qualifier
4169
+ # A version number or alias name.
4170
+ #
4171
+ # @option params [Integer] :maximum_retry_attempts
4172
+ # The maximum number of times to retry when the function returns an
4173
+ # error.
4174
+ #
4175
+ # @option params [Integer] :maximum_event_age_in_seconds
4176
+ # The maximum age of a request that Lambda sends to a function for
4177
+ # processing.
4178
+ #
4179
+ # @option params [Types::DestinationConfig] :destination_config
4180
+ # A destination for events after they have been sent to a function for
4181
+ # processing.
4182
+ #
4183
+ # **Destinations**
4184
+ #
4185
+ # * **Function** - The Amazon Resource Name (ARN) of a Lambda function.
4186
+ #
4187
+ # * **Queue** - The ARN of an SQS queue.
4188
+ #
4189
+ # * **Topic** - The ARN of an SNS topic.
4190
+ #
4191
+ # * **Event Bus** - The ARN of an Amazon EventBridge event bus.
4192
+ #
4193
+ # @return [Types::FunctionEventInvokeConfig] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4194
+ #
4195
+ # * {Types::FunctionEventInvokeConfig#last_modified #last_modified} => Time
4196
+ # * {Types::FunctionEventInvokeConfig#function_arn #function_arn} => String
4197
+ # * {Types::FunctionEventInvokeConfig#maximum_retry_attempts #maximum_retry_attempts} => Integer
4198
+ # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
4199
+ # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
4200
+ #
4201
+ # @example Request syntax with placeholder values
4202
+ #
4203
+ # resp = client.update_function_event_invoke_config({
4204
+ # function_name: "FunctionName", # required
4205
+ # qualifier: "Qualifier",
4206
+ # maximum_retry_attempts: 1,
4207
+ # maximum_event_age_in_seconds: 1,
4208
+ # destination_config: {
4209
+ # on_success: {
4210
+ # destination: "DestinationArn",
4211
+ # },
4212
+ # on_failure: {
4213
+ # destination: "DestinationArn",
4214
+ # },
4215
+ # },
4216
+ # })
4217
+ #
4218
+ # @example Response structure
4219
+ #
4220
+ # resp.last_modified #=> Time
4221
+ # resp.function_arn #=> String
4222
+ # resp.maximum_retry_attempts #=> Integer
4223
+ # resp.maximum_event_age_in_seconds #=> Integer
4224
+ # resp.destination_config.on_success.destination #=> String
4225
+ # resp.destination_config.on_failure.destination #=> String
4226
+ #
4227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionEventInvokeConfig AWS API Documentation
4228
+ #
4229
+ # @overload update_function_event_invoke_config(params = {})
4230
+ # @param [Hash] params ({})
4231
+ def update_function_event_invoke_config(params = {}, options = {})
4232
+ req = build_request(:update_function_event_invoke_config, params)
4233
+ req.send_request(options)
4234
+ end
4235
+
3622
4236
  # @!endgroup
3623
4237
 
3624
4238
  # @param params ({})
@@ -3632,7 +4246,7 @@ module Aws::Lambda
3632
4246
  params: params,
3633
4247
  config: config)
3634
4248
  context[:gem_name] = 'aws-sdk-lambda'
3635
- context[:gem_version] = '1.32.0'
4249
+ context[:gem_version] = '1.33.0'
3636
4250
  Seahorse::Client::Request.new(handlers, context)
3637
4251
  end
3638
4252
 
@@ -3698,9 +4312,11 @@ module Aws::Lambda
3698
4312
  # The following table lists the valid waiter names, the operations they call,
3699
4313
  # and the default `:delay` and `:max_attempts` values.
3700
4314
  #
3701
- # | waiter_name | params | :delay | :max_attempts |
3702
- # | --------------- | --------------- | -------- | ------------- |
3703
- # | function_exists | {#get_function} | 1 | 20 |
4315
+ # | waiter_name | params | :delay | :max_attempts |
4316
+ # | ---------------- | ----------------------------- | -------- | ------------- |
4317
+ # | function_active | {#get_function_configuration} | 5 | 60 |
4318
+ # | function_exists | {#get_function} | 1 | 20 |
4319
+ # | function_updated | {#get_function_configuration} | 5 | 60 |
3704
4320
  #
3705
4321
  # @raise [Errors::FailureStateError] Raised when the waiter terminates
3706
4322
  # because the waiter has entered a state that it will not transition
@@ -3751,7 +4367,9 @@ module Aws::Lambda
3751
4367
 
3752
4368
  def waiters
3753
4369
  {
3754
- function_exists: Waiters::FunctionExists
4370
+ function_active: Waiters::FunctionActive,
4371
+ function_exists: Waiters::FunctionExists,
4372
+ function_updated: Waiters::FunctionUpdated
3755
4373
  }
3756
4374
  end
3757
4375