aws-sdk-lambda 1.131.0 → 1.132.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -501,6 +501,25 @@ module Aws::Lambda
501
501
  # * {Types::AddLayerVersionPermissionResponse#statement #statement} => String
502
502
  # * {Types::AddLayerVersionPermissionResponse#revision_id #revision_id} => String
503
503
  #
504
+ #
505
+ # @example Example: To add permissions to a layer version
506
+ #
507
+ # # The following example grants permission for the account 223456789012 to use version 1 of a layer named my-layer.
508
+ #
509
+ # resp = client.add_layer_version_permission({
510
+ # action: "lambda:GetLayerVersion",
511
+ # layer_name: "my-layer",
512
+ # principal: "223456789012",
513
+ # statement_id: "xaccount",
514
+ # version_number: 1,
515
+ # })
516
+ #
517
+ # resp.to_h outputs the following:
518
+ # {
519
+ # revision_id: "35d87451-f796-4a3f-a618-95a3671b0a0c",
520
+ # statement: "{\"Sid\":\"xaccount\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::223456789012:root\"},\"Action\":\"lambda:GetLayerVersion\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1\"}",
521
+ # }
522
+ #
504
523
  # @example Request syntax with placeholder values
505
524
  #
506
525
  # resp = client.add_layer_version_permission({
@@ -527,13 +546,12 @@ module Aws::Lambda
527
546
  req.send_request(options)
528
547
  end
529
548
 
530
- # Grants an Amazon Web Servicesservice, Amazon Web Services account, or
531
- # Amazon Web Services organization permission to use a function. You can
532
- # apply the policy at the function level, or specify a qualifier to
533
- # restrict access to a single version or alias. If you use a qualifier,
534
- # the invoker must use the full Amazon Resource Name (ARN) of that
535
- # version or alias to invoke the function. Note: Lambda does not support
536
- # adding policies to version $LATEST.
549
+ # Grants a [principal][1] permission to use a function. You can apply
550
+ # the policy at the function level, or specify a qualifier to restrict
551
+ # access to a single version or alias. If you use a qualifier, the
552
+ # invoker must use the full Amazon Resource Name (ARN) of that version
553
+ # or alias to invoke the function. Note: Lambda does not support adding
554
+ # policies to version $LATEST.
537
555
  #
538
556
  # To grant permission to another account, specify the account ID as the
539
557
  # `Principal`. To grant permission to an organization defined in
@@ -548,11 +566,12 @@ module Aws::Lambda
548
566
  #
549
567
  # This operation adds a statement to a resource-based permissions policy
550
568
  # for the function. For more information about function policies, see
551
- # [Using resource-based policies for Lambda][1].
569
+ # [Using resource-based policies for Lambda][2].
552
570
  #
553
571
  #
554
572
  #
555
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html
573
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying
574
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html
556
575
  #
557
576
  # @option params [required, String] :function_name
558
577
  # The name or ARN of the Lambda function, version, or alias.
@@ -580,10 +599,10 @@ module Aws::Lambda
580
599
  # `lambda:InvokeFunction` or `lambda:GetFunction`.
581
600
  #
582
601
  # @option params [required, String] :principal
583
- # The Amazon Web Servicesservice or Amazon Web Services account that
584
- # invokes the function. If you specify a service, use `SourceArn` or
585
- # `SourceAccount` to limit who can invoke the function through that
586
- # service.
602
+ # The Amazon Web Servicesservice, Amazon Web Services account, IAM user,
603
+ # or IAM role that invokes the function. If you specify a service, use
604
+ # `SourceArn` or `SourceAccount` to limit who can invoke the function
605
+ # through that service.
587
606
  #
588
607
  # @option params [String] :source_arn
589
608
  # For Amazon Web Servicesservices, the ARN of the Amazon Web Services
@@ -632,6 +651,42 @@ module Aws::Lambda
632
651
  #
633
652
  # * {Types::AddPermissionResponse#statement #statement} => String
634
653
  #
654
+ #
655
+ # @example Example: To grant Amazon S3 permission to invoke a function
656
+ #
657
+ # # The following example adds permission for Amazon S3 to invoke a Lambda function named my-function for notifications from
658
+ # # a bucket named my-bucket-1xpuxmplzrlbh in account 123456789012.
659
+ #
660
+ # resp = client.add_permission({
661
+ # action: "lambda:InvokeFunction",
662
+ # function_name: "my-function",
663
+ # principal: "s3.amazonaws.com",
664
+ # source_account: "123456789012",
665
+ # source_arn: "arn:aws:s3:::my-bucket-1xpuxmplzrlbh/*",
666
+ # statement_id: "s3",
667
+ # })
668
+ #
669
+ # resp.to_h outputs the following:
670
+ # {
671
+ # statement: "{\"Sid\":\"s3\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"s3.amazonaws.com\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:function:my-function\",\"Condition\":{\"StringEquals\":{\"AWS:SourceAccount\":\"123456789012\"},\"ArnLike\":{\"AWS:SourceArn\":\"arn:aws:s3:::my-bucket-1xpuxmplzrlbh\"}}}",
672
+ # }
673
+ #
674
+ # @example Example: To grant another account permission to invoke a function
675
+ #
676
+ # # The following example adds permission for account 223456789012 invoke a Lambda function named my-function.
677
+ #
678
+ # resp = client.add_permission({
679
+ # action: "lambda:InvokeFunction",
680
+ # function_name: "my-function",
681
+ # principal: "223456789012",
682
+ # statement_id: "xaccount",
683
+ # })
684
+ #
685
+ # resp.to_h outputs the following:
686
+ # {
687
+ # statement: "{\"Sid\":\"xaccount\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::223456789012:root\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:function:my-function\"}",
688
+ # }
689
+ #
635
690
  # @example Request syntax with placeholder values
636
691
  #
637
692
  # resp = client.add_permission({
@@ -713,6 +768,27 @@ module Aws::Lambda
713
768
  # * {Types::AliasConfiguration#routing_config #routing_config} => Types::AliasRoutingConfiguration
714
769
  # * {Types::AliasConfiguration#revision_id #revision_id} => String
715
770
  #
771
+ #
772
+ # @example Example: To create an alias for a Lambda function
773
+ #
774
+ # # The following example creates an alias named LIVE that points to version 1 of the my-function Lambda function.
775
+ #
776
+ # resp = client.create_alias({
777
+ # description: "alias for live version of function",
778
+ # function_name: "my-function",
779
+ # function_version: "1",
780
+ # name: "LIVE",
781
+ # })
782
+ #
783
+ # resp.to_h outputs the following:
784
+ # {
785
+ # alias_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:LIVE",
786
+ # description: "alias for live version of function",
787
+ # function_version: "1",
788
+ # name: "LIVE",
789
+ # revision_id: "873282ed-xmpl-4dc8-a069-d0c647e470c6",
790
+ # }
791
+ #
716
792
  # @example Request syntax with placeholder values
717
793
  #
718
794
  # resp = client.create_alias({
@@ -765,6 +841,9 @@ module Aws::Lambda
765
841
  # The code signing policies define the actions to take if the validation
766
842
  # checks fail.
767
843
  #
844
+ # @option params [Hash<String,String>] :tags
845
+ # A list of tags to add to the code signing configuration.
846
+ #
768
847
  # @return [Types::CreateCodeSigningConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
769
848
  #
770
849
  # * {Types::CreateCodeSigningConfigResponse#code_signing_config #code_signing_config} => Types::CodeSigningConfig
@@ -779,6 +858,9 @@ module Aws::Lambda
779
858
  # code_signing_policies: {
780
859
  # untrusted_artifact_on_deployment: "Warn", # accepts Warn, Enforce
781
860
  # },
861
+ # tags: {
862
+ # "TagKey" => "TagValue",
863
+ # },
782
864
  # })
783
865
  #
784
866
  # @example Response structure
@@ -1003,6 +1085,9 @@ module Aws::Lambda
1003
1085
  # set to infinite (-1), failed records are retried until the record
1004
1086
  # expires.
1005
1087
  #
1088
+ # @option params [Hash<String,String>] :tags
1089
+ # A list of tags to apply to the event source mapping.
1090
+ #
1006
1091
  # @option params [Integer] :tumbling_window_in_seconds
1007
1092
  # (Kinesis and DynamoDB Streams only) The duration in seconds of a
1008
1093
  # processing window for DynamoDB and Kinesis Streams event sources. A
@@ -1086,6 +1171,29 @@ module Aws::Lambda
1086
1171
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
1087
1172
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
1088
1173
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
1174
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
1175
+ #
1176
+ #
1177
+ # @example Example: To create a mapping between an event source and an AWS Lambda function
1178
+ #
1179
+ # # The following example creates a mapping between an SQS queue and the my-function Lambda function.
1180
+ #
1181
+ # resp = client.create_event_source_mapping({
1182
+ # batch_size: 5,
1183
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:my-queue",
1184
+ # function_name: "my-function",
1185
+ # })
1186
+ #
1187
+ # resp.to_h outputs the following:
1188
+ # {
1189
+ # batch_size: 5,
1190
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:my-queue",
1191
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
1192
+ # last_modified: Time.parse(1569284520.333),
1193
+ # state: "Creating",
1194
+ # state_transition_reason: "USER_INITIATED",
1195
+ # uuid: "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
1196
+ # }
1089
1197
  #
1090
1198
  # @example Request syntax with placeholder values
1091
1199
  #
@@ -1116,6 +1224,9 @@ module Aws::Lambda
1116
1224
  # maximum_record_age_in_seconds: 1,
1117
1225
  # bisect_batch_on_function_error: false,
1118
1226
  # maximum_retry_attempts: 1,
1227
+ # tags: {
1228
+ # "TagKey" => "TagValue",
1229
+ # },
1119
1230
  # tumbling_window_in_seconds: 1,
1120
1231
  # topics: ["Topic"],
1121
1232
  # queues: ["Queue"],
@@ -1191,6 +1302,7 @@ module Aws::Lambda
1191
1302
  # resp.kms_key_arn #=> String
1192
1303
  # resp.filter_criteria_error.error_code #=> String
1193
1304
  # resp.filter_criteria_error.message #=> String
1305
+ # resp.event_source_mapping_arn #=> String
1194
1306
  #
1195
1307
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping AWS API Documentation
1196
1308
  #
@@ -1498,6 +1610,69 @@ module Aws::Lambda
1498
1610
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
1499
1611
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
1500
1612
  #
1613
+ #
1614
+ # @example Example: To create a function
1615
+ #
1616
+ # # The following example creates a function with a deployment package in Amazon S3 and enables X-Ray tracing and
1617
+ # # environment variable encryption.
1618
+ #
1619
+ # resp = client.create_function({
1620
+ # code: {
1621
+ # s3_bucket: "my-bucket-1xpuxmplzrlbh",
1622
+ # s3_key: "function.zip",
1623
+ # },
1624
+ # description: "Process image objects from Amazon S3.",
1625
+ # environment: {
1626
+ # variables: {
1627
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
1628
+ # "PREFIX" => "inbound",
1629
+ # },
1630
+ # },
1631
+ # function_name: "my-function",
1632
+ # handler: "index.handler",
1633
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
1634
+ # memory_size: 256,
1635
+ # publish: true,
1636
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
1637
+ # runtime: "nodejs12.x",
1638
+ # tags: {
1639
+ # "DEPARTMENT" => "Assets",
1640
+ # },
1641
+ # timeout: 15,
1642
+ # tracing_config: {
1643
+ # mode: "Active",
1644
+ # },
1645
+ # })
1646
+ #
1647
+ # resp.to_h outputs the following:
1648
+ # {
1649
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
1650
+ # code_size: 5797206,
1651
+ # description: "Process image objects from Amazon S3.",
1652
+ # environment: {
1653
+ # variables: {
1654
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
1655
+ # "PREFIX" => "inbound",
1656
+ # },
1657
+ # },
1658
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
1659
+ # function_name: "my-function",
1660
+ # handler: "index.handler",
1661
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
1662
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
1663
+ # last_update_status: "Successful",
1664
+ # memory_size: 256,
1665
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
1666
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
1667
+ # runtime: "nodejs12.x",
1668
+ # state: "Active",
1669
+ # timeout: 15,
1670
+ # tracing_config: {
1671
+ # mode: "Active",
1672
+ # },
1673
+ # version: "1",
1674
+ # }
1675
+ #
1501
1676
  # @example Request syntax with placeholder values
1502
1677
  #
1503
1678
  # resp = client.create_function({
@@ -1778,6 +1953,16 @@ module Aws::Lambda
1778
1953
  #
1779
1954
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1780
1955
  #
1956
+ #
1957
+ # @example Example: To delete a Lambda function alias
1958
+ #
1959
+ # # The following example deletes an alias named BLUE from a function named my-function
1960
+ #
1961
+ # resp = client.delete_alias({
1962
+ # function_name: "my-function",
1963
+ # name: "BLUE",
1964
+ # })
1965
+ #
1781
1966
  # @example Request syntax with placeholder values
1782
1967
  #
1783
1968
  # resp = client.delete_alias({
@@ -1861,6 +2046,27 @@ module Aws::Lambda
1861
2046
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
1862
2047
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
1863
2048
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
2049
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
2050
+ #
2051
+ #
2052
+ # @example Example: To delete a Lambda function event source mapping
2053
+ #
2054
+ # # The following example deletes an event source mapping. To get a mapping's UUID, use ListEventSourceMappings.
2055
+ #
2056
+ # resp = client.delete_event_source_mapping({
2057
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2058
+ # })
2059
+ #
2060
+ # resp.to_h outputs the following:
2061
+ # {
2062
+ # batch_size: 5,
2063
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:my-queue",
2064
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function",
2065
+ # last_modified: Time.parse("${timestamp}"),
2066
+ # state: "Enabled",
2067
+ # state_transition_reason: "USER_INITIATED",
2068
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2069
+ # }
1864
2070
  #
1865
2071
  # @example Request syntax with placeholder values
1866
2072
  #
@@ -1911,6 +2117,7 @@ module Aws::Lambda
1911
2117
  # resp.kms_key_arn #=> String
1912
2118
  # resp.filter_criteria_error.error_code #=> String
1913
2119
  # resp.filter_criteria_error.message #=> String
2120
+ # resp.event_source_mapping_arn #=> String
1914
2121
  #
1915
2122
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping AWS API Documentation
1916
2123
  #
@@ -1954,6 +2161,16 @@ module Aws::Lambda
1954
2161
  #
1955
2162
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1956
2163
  #
2164
+ #
2165
+ # @example Example: To delete a version of a Lambda function
2166
+ #
2167
+ # # The following example deletes version 1 of a Lambda function named my-function.
2168
+ #
2169
+ # resp = client.delete_function({
2170
+ # function_name: "my-function",
2171
+ # qualifier: "1",
2172
+ # })
2173
+ #
1957
2174
  # @example Request syntax with placeholder values
1958
2175
  #
1959
2176
  # resp = client.delete_function({
@@ -2023,6 +2240,15 @@ module Aws::Lambda
2023
2240
  #
2024
2241
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2025
2242
  #
2243
+ #
2244
+ # @example Example: To remove the reserved concurrent execution limit from a function
2245
+ #
2246
+ # # The following example deletes the reserved concurrent execution limit from a function named my-function.
2247
+ #
2248
+ # resp = client.delete_function_concurrency({
2249
+ # function_name: "my-function",
2250
+ # })
2251
+ #
2026
2252
  # @example Request syntax with placeholder values
2027
2253
  #
2028
2254
  # resp = client.delete_function_concurrency({
@@ -2066,6 +2292,17 @@ module Aws::Lambda
2066
2292
  #
2067
2293
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2068
2294
  #
2295
+ #
2296
+ # @example Example: To delete an asynchronous invocation configuration
2297
+ #
2298
+ # # The following example deletes the asynchronous invocation configuration for the GREEN alias of a function named
2299
+ # # my-function.
2300
+ #
2301
+ # resp = client.delete_function_event_invoke_config({
2302
+ # function_name: "my-function",
2303
+ # qualifier: "GREEN",
2304
+ # })
2305
+ #
2069
2306
  # @example Request syntax with placeholder values
2070
2307
  #
2071
2308
  # resp = client.delete_function_event_invoke_config({
@@ -2138,6 +2375,16 @@ module Aws::Lambda
2138
2375
  #
2139
2376
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2140
2377
  #
2378
+ #
2379
+ # @example Example: To delete a version of a Lambda layer
2380
+ #
2381
+ # # The following example deletes version 2 of a layer named my-layer.
2382
+ #
2383
+ # resp = client.delete_layer_version({
2384
+ # layer_name: "my-layer",
2385
+ # version_number: 2,
2386
+ # })
2387
+ #
2141
2388
  # @example Request syntax with placeholder values
2142
2389
  #
2143
2390
  # resp = client.delete_layer_version({
@@ -2176,6 +2423,17 @@ module Aws::Lambda
2176
2423
  #
2177
2424
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2178
2425
  #
2426
+ #
2427
+ # @example Example: To delete a provisioned concurrency configuration
2428
+ #
2429
+ # # The following example deletes the provisioned concurrency configuration for the GREEN alias of a function named
2430
+ # # my-function.
2431
+ #
2432
+ # resp = client.delete_provisioned_concurrency_config({
2433
+ # function_name: "my-function",
2434
+ # qualifier: "GREEN",
2435
+ # })
2436
+ #
2179
2437
  # @example Request syntax with placeholder values
2180
2438
  #
2181
2439
  # resp = client.delete_provisioned_concurrency_config({
@@ -2192,6 +2450,13 @@ module Aws::Lambda
2192
2450
  req.send_request(options)
2193
2451
  end
2194
2452
 
2453
+ # <note markdown="1"> The option to create and modify full JSON resource-based policies, and
2454
+ # to use the PutResourcePolicy, GetResourcePolicy, and
2455
+ # DeleteResourcePolicy APIs, won't be available in all Amazon Web
2456
+ # Services Regions until September 30, 2024.
2457
+ #
2458
+ # </note>
2459
+ #
2195
2460
  # Deletes a [resource-based policy][1] from a function.
2196
2461
  #
2197
2462
  #
@@ -2239,6 +2504,29 @@ module Aws::Lambda
2239
2504
  # * {Types::GetAccountSettingsResponse#account_limit #account_limit} => Types::AccountLimit
2240
2505
  # * {Types::GetAccountSettingsResponse#account_usage #account_usage} => Types::AccountUsage
2241
2506
  #
2507
+ #
2508
+ # @example Example: To get account settings
2509
+ #
2510
+ # # This operation takes no parameters and returns details about storage and concurrency quotas in the current Region.
2511
+ #
2512
+ # resp = client.get_account_settings({
2513
+ # })
2514
+ #
2515
+ # resp.to_h outputs the following:
2516
+ # {
2517
+ # account_limit: {
2518
+ # code_size_unzipped: 262144000,
2519
+ # code_size_zipped: 52428800,
2520
+ # concurrent_executions: 1000,
2521
+ # total_code_size: 80530636800,
2522
+ # unreserved_concurrent_executions: 1000,
2523
+ # },
2524
+ # account_usage: {
2525
+ # function_count: 4,
2526
+ # total_code_size: 9426,
2527
+ # },
2528
+ # }
2529
+ #
2242
2530
  # @example Response structure
2243
2531
  #
2244
2532
  # resp.account_limit.total_code_size #=> Integer
@@ -2291,6 +2579,25 @@ module Aws::Lambda
2291
2579
  # * {Types::AliasConfiguration#routing_config #routing_config} => Types::AliasRoutingConfiguration
2292
2580
  # * {Types::AliasConfiguration#revision_id #revision_id} => String
2293
2581
  #
2582
+ #
2583
+ # @example Example: To get a Lambda function alias
2584
+ #
2585
+ # # The following example returns details about an alias named BLUE for a function named my-function
2586
+ #
2587
+ # resp = client.get_alias({
2588
+ # function_name: "my-function",
2589
+ # name: "BLUE",
2590
+ # })
2591
+ #
2592
+ # resp.to_h outputs the following:
2593
+ # {
2594
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:BLUE",
2595
+ # description: "Production environment BLUE.",
2596
+ # function_version: "3",
2597
+ # name: "BLUE",
2598
+ # revision_id: "594f41fb-xmpl-4c20-95c7-6ca5f2a92c93",
2599
+ # }
2600
+ #
2294
2601
  # @example Request syntax with placeholder values
2295
2602
  #
2296
2603
  # resp = client.get_alias({
@@ -2388,6 +2695,34 @@ module Aws::Lambda
2388
2695
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
2389
2696
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
2390
2697
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
2698
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
2699
+ #
2700
+ #
2701
+ # @example Example: To get a Lambda function's event source mapping
2702
+ #
2703
+ # # The following example returns details about an event source mapping. To get a mapping's UUID, use
2704
+ # # ListEventSourceMappings.
2705
+ #
2706
+ # resp = client.get_event_source_mapping({
2707
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2708
+ # })
2709
+ #
2710
+ # resp.to_h outputs the following:
2711
+ # {
2712
+ # batch_size: 500,
2713
+ # bisect_batch_on_function_error: false,
2714
+ # destination_config: {
2715
+ # },
2716
+ # event_source_arn: "arn:aws:sqs:us-east-2:123456789012:mySQSqueue",
2717
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:myFunction",
2718
+ # last_modified: Time.parse("${timestamp}"),
2719
+ # last_processing_result: "No records processed",
2720
+ # maximum_record_age_in_seconds: 604800,
2721
+ # maximum_retry_attempts: 10000,
2722
+ # state: "Creating",
2723
+ # state_transition_reason: "User action",
2724
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2725
+ # }
2391
2726
  #
2392
2727
  # @example Request syntax with placeholder values
2393
2728
  #
@@ -2438,6 +2773,7 @@ module Aws::Lambda
2438
2773
  # resp.kms_key_arn #=> String
2439
2774
  # resp.filter_criteria_error.error_code #=> String
2440
2775
  # resp.filter_criteria_error.message #=> String
2776
+ # resp.event_source_mapping_arn #=> String
2441
2777
  #
2442
2778
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping AWS API Documentation
2443
2779
  #
@@ -2481,6 +2817,54 @@ module Aws::Lambda
2481
2817
  # * {Types::GetFunctionResponse#tags #tags} => Hash&lt;String,String&gt;
2482
2818
  # * {Types::GetFunctionResponse#concurrency #concurrency} => Types::Concurrency
2483
2819
  #
2820
+ #
2821
+ # @example Example: To get a Lambda function
2822
+ #
2823
+ # # The following example returns code and configuration details for version 1 of a function named my-function.
2824
+ #
2825
+ # resp = client.get_function({
2826
+ # function_name: "my-function",
2827
+ # qualifier: "1",
2828
+ # })
2829
+ #
2830
+ # resp.to_h outputs the following:
2831
+ # {
2832
+ # code: {
2833
+ # location: "https://awslambda-us-west-2-tasks.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-function-e7d9d1ed-xmpl-4f79-904a-4b87f2681f30?versionId=sH3TQwBOaUy...",
2834
+ # repository_type: "S3",
2835
+ # },
2836
+ # configuration: {
2837
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
2838
+ # code_size: 5797206,
2839
+ # description: "Process image objects from Amazon S3.",
2840
+ # environment: {
2841
+ # variables: {
2842
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
2843
+ # "PREFIX" => "inbound",
2844
+ # },
2845
+ # },
2846
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
2847
+ # function_name: "my-function",
2848
+ # handler: "index.handler",
2849
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
2850
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
2851
+ # last_update_status: "Successful",
2852
+ # memory_size: 256,
2853
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
2854
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
2855
+ # runtime: "nodejs12.x",
2856
+ # state: "Active",
2857
+ # timeout: 15,
2858
+ # tracing_config: {
2859
+ # mode: "Active",
2860
+ # },
2861
+ # version: "$LATEST",
2862
+ # },
2863
+ # tags: {
2864
+ # "DEPARTMENT" => "Assets",
2865
+ # },
2866
+ # }
2867
+ #
2484
2868
  # @example Request syntax with placeholder values
2485
2869
  #
2486
2870
  # resp = client.get_function({
@@ -2642,6 +3026,20 @@ module Aws::Lambda
2642
3026
  #
2643
3027
  # * {Types::GetFunctionConcurrencyResponse#reserved_concurrent_executions #reserved_concurrent_executions} => Integer
2644
3028
  #
3029
+ #
3030
+ # @example Example: To get the reserved concurrency setting for a function
3031
+ #
3032
+ # # The following example returns the reserved concurrency setting for a function named my-function.
3033
+ #
3034
+ # resp = client.get_function_concurrency({
3035
+ # function_name: "my-function",
3036
+ # })
3037
+ #
3038
+ # resp.to_h outputs the following:
3039
+ # {
3040
+ # reserved_concurrent_executions: 250,
3041
+ # }
3042
+ #
2645
3043
  # @example Request syntax with placeholder values
2646
3044
  #
2647
3045
  # resp = client.get_function_concurrency({
@@ -2728,6 +3126,45 @@ module Aws::Lambda
2728
3126
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
2729
3127
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
2730
3128
  #
3129
+ #
3130
+ # @example Example: To get a Lambda function's event source mapping
3131
+ #
3132
+ # # The following example returns and configuration details for version 1 of a function named my-function.
3133
+ #
3134
+ # resp = client.get_function_configuration({
3135
+ # function_name: "my-function",
3136
+ # qualifier: "1",
3137
+ # })
3138
+ #
3139
+ # resp.to_h outputs the following:
3140
+ # {
3141
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
3142
+ # code_size: 5797206,
3143
+ # description: "Process image objects from Amazon S3.",
3144
+ # environment: {
3145
+ # variables: {
3146
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
3147
+ # "PREFIX" => "inbound",
3148
+ # },
3149
+ # },
3150
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
3151
+ # function_name: "my-function",
3152
+ # handler: "index.handler",
3153
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
3154
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
3155
+ # last_update_status: "Successful",
3156
+ # memory_size: 256,
3157
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
3158
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
3159
+ # runtime: "nodejs12.x",
3160
+ # state: "Active",
3161
+ # timeout: 15,
3162
+ # tracing_config: {
3163
+ # mode: "Active",
3164
+ # },
3165
+ # version: "$LATEST",
3166
+ # }
3167
+ #
2731
3168
  # @example Request syntax with placeholder values
2732
3169
  #
2733
3170
  # resp = client.get_function_configuration({
@@ -2851,6 +3288,32 @@ module Aws::Lambda
2851
3288
  # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
2852
3289
  # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
2853
3290
  #
3291
+ #
3292
+ # @example Example: To get an asynchronous invocation configuration
3293
+ #
3294
+ # # The following example returns the asynchronous invocation configuration for the BLUE alias of a function named
3295
+ # # my-function.
3296
+ #
3297
+ # resp = client.get_function_event_invoke_config({
3298
+ # function_name: "my-function",
3299
+ # qualifier: "BLUE",
3300
+ # })
3301
+ #
3302
+ # resp.to_h outputs the following:
3303
+ # {
3304
+ # destination_config: {
3305
+ # on_failure: {
3306
+ # destination: "arn:aws:sqs:us-east-2:123456789012:failed-invocations",
3307
+ # },
3308
+ # on_success: {
3309
+ # },
3310
+ # },
3311
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE",
3312
+ # last_modified: Time.parse("${timestamp}"),
3313
+ # maximum_event_age_in_seconds: 3600,
3314
+ # maximum_retry_attempts: 0,
3315
+ # }
3316
+ #
2854
3317
  # @example Request syntax with placeholder values
2855
3318
  #
2856
3319
  # resp = client.get_function_event_invoke_config({
@@ -2997,6 +3460,35 @@ module Aws::Lambda
2997
3460
  # * {Types::GetLayerVersionResponse#license_info #license_info} => String
2998
3461
  # * {Types::GetLayerVersionResponse#compatible_architectures #compatible_architectures} => Array&lt;String&gt;
2999
3462
  #
3463
+ #
3464
+ # @example Example: To get information about a Lambda layer version
3465
+ #
3466
+ # # The following example returns information for version 1 of a layer named my-layer.
3467
+ #
3468
+ # resp = client.get_layer_version({
3469
+ # layer_name: "my-layer",
3470
+ # version_number: 1,
3471
+ # })
3472
+ #
3473
+ # resp.to_h outputs the following:
3474
+ # {
3475
+ # compatible_runtimes: [
3476
+ # "python3.6",
3477
+ # "python3.7",
3478
+ # ],
3479
+ # content: {
3480
+ # code_sha_256: "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=",
3481
+ # code_size: 169,
3482
+ # location: "https://awslambda-us-east-2-layers.s3.us-east-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...",
3483
+ # },
3484
+ # created_date: Time.parse("2018-11-14T23:03:52.894+0000"),
3485
+ # description: "My Python layer",
3486
+ # layer_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer",
3487
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1",
3488
+ # license_info: "MIT",
3489
+ # version: 1,
3490
+ # }
3491
+ #
3000
3492
  # @example Request syntax with placeholder values
3001
3493
  #
3002
3494
  # resp = client.get_layer_version({
@@ -3053,6 +3545,32 @@ module Aws::Lambda
3053
3545
  # * {Types::GetLayerVersionResponse#license_info #license_info} => String
3054
3546
  # * {Types::GetLayerVersionResponse#compatible_architectures #compatible_architectures} => Array&lt;String&gt;
3055
3547
  #
3548
+ #
3549
+ # @example Example: To get information about a Lambda layer version
3550
+ #
3551
+ # # The following example returns information about the layer version with the specified Amazon Resource Name (ARN).
3552
+ #
3553
+ # resp = client.get_layer_version_by_arn({
3554
+ # arn: "arn:aws:lambda:ca-central-1:123456789012:layer:blank-python-lib:3",
3555
+ # })
3556
+ #
3557
+ # resp.to_h outputs the following:
3558
+ # {
3559
+ # compatible_runtimes: [
3560
+ # "python3.8",
3561
+ # ],
3562
+ # content: {
3563
+ # code_sha_256: "6x+xmpl/M3BnQUk7gS9sGmfeFsR/npojXoA3fZUv4eU=",
3564
+ # code_size: 9529009,
3565
+ # location: "https://awslambda-us-east-2-layers.s3.us-east-2.amazonaws.com/snapshots/123456789012/blank-python-lib-e5212378-xmpl-44ee-8398-9d8ec5113949?versionId=WbZnvf...",
3566
+ # },
3567
+ # created_date: Time.parse("2020-03-31T00:35:18.949+0000"),
3568
+ # description: "Dependencies for the blank-python sample app.",
3569
+ # layer_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-python-lib",
3570
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-python-lib:3",
3571
+ # version: 3,
3572
+ # }
3573
+ #
3056
3574
  # @example Request syntax with placeholder values
3057
3575
  #
3058
3576
  # resp = client.get_layer_version_by_arn({
@@ -3157,6 +3675,22 @@ module Aws::Lambda
3157
3675
  # * {Types::GetPolicyResponse#policy #policy} => String
3158
3676
  # * {Types::GetPolicyResponse#revision_id #revision_id} => String
3159
3677
  #
3678
+ #
3679
+ # @example Example: To retrieve a Lambda function policy
3680
+ #
3681
+ # # The following example returns the resource-based policy for version 1 of a Lambda function named my-function.
3682
+ #
3683
+ # resp = client.get_policy({
3684
+ # function_name: "my-function",
3685
+ # qualifier: "1",
3686
+ # })
3687
+ #
3688
+ # resp.to_h outputs the following:
3689
+ # {
3690
+ # policy: "{\"Version\":\"2012-10-17\",\"Id\":\"default\",\"Statement\":[{\"Sid\":\"xaccount\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::123456789012:root\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:function:my-function:1\"}]}",
3691
+ # revision_id: "4843f2f6-7c59-4fda-b484-afd0bc0e22b8",
3692
+ # }
3693
+ #
3160
3694
  # @example Request syntax with placeholder values
3161
3695
  #
3162
3696
  # resp = client.get_policy({
@@ -3208,6 +3742,45 @@ module Aws::Lambda
3208
3742
  # * {Types::GetProvisionedConcurrencyConfigResponse#status_reason #status_reason} => String
3209
3743
  # * {Types::GetProvisionedConcurrencyConfigResponse#last_modified #last_modified} => Time
3210
3744
  #
3745
+ #
3746
+ # @example Example: To view a provisioned concurrency configuration
3747
+ #
3748
+ # # The following example displays details for the provisioned concurrency configuration for the BLUE alias of the specified
3749
+ # # function.
3750
+ #
3751
+ # resp = client.get_provisioned_concurrency_config({
3752
+ # function_name: "my-function",
3753
+ # qualifier: "BLUE",
3754
+ # })
3755
+ #
3756
+ # resp.to_h outputs the following:
3757
+ # {
3758
+ # allocated_provisioned_concurrent_executions: 100,
3759
+ # available_provisioned_concurrent_executions: 100,
3760
+ # last_modified: Time.parse("2019-12-31T20:28:49+0000"),
3761
+ # requested_provisioned_concurrent_executions: 100,
3762
+ # status: "READY",
3763
+ # }
3764
+ #
3765
+ # @example Example: To get a provisioned concurrency configuration
3766
+ #
3767
+ # # The following example returns details for the provisioned concurrency configuration for the BLUE alias of the specified
3768
+ # # function.
3769
+ #
3770
+ # resp = client.get_provisioned_concurrency_config({
3771
+ # function_name: "my-function",
3772
+ # qualifier: "BLUE",
3773
+ # })
3774
+ #
3775
+ # resp.to_h outputs the following:
3776
+ # {
3777
+ # allocated_provisioned_concurrent_executions: 100,
3778
+ # available_provisioned_concurrent_executions: 100,
3779
+ # last_modified: Time.parse("2019-12-31T20:28:49+0000"),
3780
+ # requested_provisioned_concurrent_executions: 100,
3781
+ # status: "READY",
3782
+ # }
3783
+ #
3211
3784
  # @example Request syntax with placeholder values
3212
3785
  #
3213
3786
  # resp = client.get_provisioned_concurrency_config({
@@ -3233,6 +3806,12 @@ module Aws::Lambda
3233
3806
  req.send_request(options)
3234
3807
  end
3235
3808
 
3809
+ # <note markdown="1"> The option to configure public-access settings, and to use the
3810
+ # PutPublicAccessBlock and GetPublicAccessBlock APIs, won't be
3811
+ # available in all Amazon Web Services Regions until September 30, 2024.
3812
+ #
3813
+ # </note>
3814
+ #
3236
3815
  # Retrieve the public-access settings for a function.
3237
3816
  #
3238
3817
  # @option params [required, String] :resource_arn
@@ -3263,6 +3842,13 @@ module Aws::Lambda
3263
3842
  req.send_request(options)
3264
3843
  end
3265
3844
 
3845
+ # <note markdown="1"> The option to create and modify full JSON resource-based policies, and
3846
+ # to use the PutResourcePolicy, GetResourcePolicy, and
3847
+ # DeleteResourcePolicy APIs, won't be available in all Amazon Web
3848
+ # Services Regions until September 30, 2024.
3849
+ #
3850
+ # </note>
3851
+ #
3266
3852
  # Retrieves the [resource-based policy][1] attached to a function.
3267
3853
  #
3268
3854
  #
@@ -3476,6 +4062,40 @@ module Aws::Lambda
3476
4062
  # * {Types::InvocationResponse#payload #payload} => String
3477
4063
  # * {Types::InvocationResponse#executed_version #executed_version} => String
3478
4064
  #
4065
+ #
4066
+ # @example Example: To invoke a Lambda function
4067
+ #
4068
+ # # The following example invokes version 1 of a function named my-function with an empty event payload.
4069
+ #
4070
+ # resp = client.invoke({
4071
+ # function_name: "my-function",
4072
+ # payload: "{}",
4073
+ # qualifier: "1",
4074
+ # })
4075
+ #
4076
+ # resp.to_h outputs the following:
4077
+ # {
4078
+ # payload: "200 SUCCESS",
4079
+ # status_code: 200,
4080
+ # }
4081
+ #
4082
+ # @example Example: To invoke a Lambda function asynchronously
4083
+ #
4084
+ # # The following example invokes version 1 of a function named my-function asynchronously.
4085
+ #
4086
+ # resp = client.invoke({
4087
+ # function_name: "my-function",
4088
+ # invocation_type: "Event",
4089
+ # payload: "{}",
4090
+ # qualifier: "1",
4091
+ # })
4092
+ #
4093
+ # resp.to_h outputs the following:
4094
+ # {
4095
+ # payload: "",
4096
+ # status_code: 202,
4097
+ # }
4098
+ #
3479
4099
  # @example Request syntax with placeholder values
3480
4100
  #
3481
4101
  # resp = client.invoke({
@@ -3536,6 +4156,21 @@ module Aws::Lambda
3536
4156
  #
3537
4157
  # * {Types::InvokeAsyncResponse#status #status} => Integer
3538
4158
  #
4159
+ #
4160
+ # @example Example: To invoke a Lambda function asynchronously
4161
+ #
4162
+ # # The following example invokes a Lambda function asynchronously
4163
+ #
4164
+ # resp = client.invoke_async({
4165
+ # function_name: "my-function",
4166
+ # invoke_args: "{}",
4167
+ # })
4168
+ #
4169
+ # resp.to_h outputs the following:
4170
+ # {
4171
+ # status: 202,
4172
+ # }
4173
+ #
3539
4174
  # @example Request syntax with placeholder values
3540
4175
  #
3541
4176
  # resp = client.invoke_async({
@@ -3808,6 +4443,40 @@ module Aws::Lambda
3808
4443
  #
3809
4444
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3810
4445
  #
4446
+ #
4447
+ # @example Example: To list a function's aliases
4448
+ #
4449
+ # # The following example returns a list of aliases for a function named my-function.
4450
+ #
4451
+ # resp = client.list_aliases({
4452
+ # function_name: "my-function",
4453
+ # })
4454
+ #
4455
+ # resp.to_h outputs the following:
4456
+ # {
4457
+ # aliases: [
4458
+ # {
4459
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:BETA",
4460
+ # description: "Production environment BLUE.",
4461
+ # function_version: "2",
4462
+ # name: "BLUE",
4463
+ # revision_id: "a410117f-xmpl-494e-8035-7e204bb7933b",
4464
+ # routing_config: {
4465
+ # additional_version_weights: {
4466
+ # "1" => 0.7,
4467
+ # },
4468
+ # },
4469
+ # },
4470
+ # {
4471
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:LIVE",
4472
+ # description: "Production environment GREEN.",
4473
+ # function_version: "1",
4474
+ # name: "GREEN",
4475
+ # revision_id: "21d40116-xmpl-40ba-9360-3ea284da1bb5",
4476
+ # },
4477
+ # ],
4478
+ # }
4479
+ #
3811
4480
  # @example Request syntax with placeholder values
3812
4481
  #
3813
4482
  # resp = client.list_aliases({
@@ -3946,6 +4615,30 @@ module Aws::Lambda
3946
4615
  #
3947
4616
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3948
4617
  #
4618
+ #
4619
+ # @example Example: To list the event source mappings for a function
4620
+ #
4621
+ # # The following example returns a list of the event source mappings for a function named my-function.
4622
+ #
4623
+ # resp = client.list_event_source_mappings({
4624
+ # function_name: "my-function",
4625
+ # })
4626
+ #
4627
+ # resp.to_h outputs the following:
4628
+ # {
4629
+ # event_source_mappings: [
4630
+ # {
4631
+ # batch_size: 5,
4632
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:mySQSqueue",
4633
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
4634
+ # last_modified: Time.parse(1569284520.333),
4635
+ # state: "Enabled",
4636
+ # state_transition_reason: "USER_INITIATED",
4637
+ # uuid: "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
4638
+ # },
4639
+ # ],
4640
+ # }
4641
+ #
3949
4642
  # @example Request syntax with placeholder values
3950
4643
  #
3951
4644
  # resp = client.list_event_source_mappings({
@@ -4000,6 +4693,7 @@ module Aws::Lambda
4000
4693
  # resp.event_source_mappings[0].kms_key_arn #=> String
4001
4694
  # resp.event_source_mappings[0].filter_criteria_error.error_code #=> String
4002
4695
  # resp.event_source_mappings[0].filter_criteria_error.message #=> String
4696
+ # resp.event_source_mappings[0].event_source_mapping_arn #=> String
4003
4697
  #
4004
4698
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings AWS API Documentation
4005
4699
  #
@@ -4045,6 +4739,33 @@ module Aws::Lambda
4045
4739
  #
4046
4740
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4047
4741
  #
4742
+ #
4743
+ # @example Example: To view a list of asynchronous invocation configurations
4744
+ #
4745
+ # # The following example returns a list of asynchronous invocation configurations for a function named my-function.
4746
+ #
4747
+ # resp = client.list_function_event_invoke_configs({
4748
+ # function_name: "my-function",
4749
+ # })
4750
+ #
4751
+ # resp.to_h outputs the following:
4752
+ # {
4753
+ # function_event_invoke_configs: [
4754
+ # {
4755
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN",
4756
+ # last_modified: Time.parse(1577824406.719),
4757
+ # maximum_event_age_in_seconds: 1800,
4758
+ # maximum_retry_attempts: 2,
4759
+ # },
4760
+ # {
4761
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE",
4762
+ # last_modified: Time.parse(1577824396.653),
4763
+ # maximum_event_age_in_seconds: 3600,
4764
+ # maximum_retry_attempts: 0,
4765
+ # },
4766
+ # ],
4767
+ # }
4768
+ #
4048
4769
  # @example Request syntax with placeholder values
4049
4770
  #
4050
4771
  # resp = client.list_function_event_invoke_configs({
@@ -4185,6 +4906,64 @@ module Aws::Lambda
4185
4906
  #
4186
4907
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4187
4908
  #
4909
+ #
4910
+ # @example Example: To get a list of Lambda functions
4911
+ #
4912
+ # # This operation returns a list of Lambda functions.
4913
+ #
4914
+ # resp = client.list_functions({
4915
+ # })
4916
+ #
4917
+ # resp.to_h outputs the following:
4918
+ # {
4919
+ # functions: [
4920
+ # {
4921
+ # code_sha_256: "dBG9m8SGdmlEjw/JYXlhhvCrAv5TxvXsbL/RMr0fT/I=",
4922
+ # code_size: 294,
4923
+ # description: "",
4924
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:helloworld",
4925
+ # function_name: "helloworld",
4926
+ # handler: "helloworld.handler",
4927
+ # last_modified: Time.parse("2019-09-23T18:32:33.857+0000"),
4928
+ # memory_size: 128,
4929
+ # revision_id: "1718e831-badf-4253-9518-d0644210af7b",
4930
+ # role: "arn:aws:iam::123456789012:role/service-role/MyTestFunction-role-zgur6bf4",
4931
+ # runtime: "nodejs10.x",
4932
+ # timeout: 3,
4933
+ # tracing_config: {
4934
+ # mode: "PassThrough",
4935
+ # },
4936
+ # version: "$LATEST",
4937
+ # },
4938
+ # {
4939
+ # code_sha_256: "sU0cJ2/hOZevwV/lTxCuQqK3gDZP3i8gUoqUUVRmY6E=",
4940
+ # code_size: 266,
4941
+ # description: "",
4942
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
4943
+ # function_name: "my-function",
4944
+ # handler: "index.handler",
4945
+ # last_modified: Time.parse("2019-10-01T16:47:28.490+0000"),
4946
+ # memory_size: 256,
4947
+ # revision_id: "93017fc9-59cb-41dc-901b-4845ce4bf668",
4948
+ # role: "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq",
4949
+ # runtime: "nodejs10.x",
4950
+ # timeout: 3,
4951
+ # tracing_config: {
4952
+ # mode: "PassThrough",
4953
+ # },
4954
+ # version: "$LATEST",
4955
+ # vpc_config: {
4956
+ # security_group_ids: [
4957
+ # ],
4958
+ # subnet_ids: [
4959
+ # ],
4960
+ # vpc_id: "",
4961
+ # },
4962
+ # },
4963
+ # ],
4964
+ # next_marker: "",
4965
+ # }
4966
+ #
4188
4967
  # @example Request syntax with placeholder values
4189
4968
  #
4190
4969
  # resp = client.list_functions({
@@ -4363,6 +5142,39 @@ module Aws::Lambda
4363
5142
  #
4364
5143
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4365
5144
  #
5145
+ #
5146
+ # @example Example: To list versions of a layer
5147
+ #
5148
+ # # The following example displays information about the versions for the layer named blank-java-lib
5149
+ #
5150
+ # resp = client.list_layer_versions({
5151
+ # layer_name: "blank-java-lib",
5152
+ # })
5153
+ #
5154
+ # resp.to_h outputs the following:
5155
+ # {
5156
+ # layer_versions: [
5157
+ # {
5158
+ # compatible_runtimes: [
5159
+ # "java8",
5160
+ # ],
5161
+ # created_date: Time.parse("2020-03-18T23:38:42.284+0000"),
5162
+ # description: "Dependencies for the blank-java sample app.",
5163
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-java-lib:7",
5164
+ # version: 7,
5165
+ # },
5166
+ # {
5167
+ # compatible_runtimes: [
5168
+ # "java8",
5169
+ # ],
5170
+ # created_date: Time.parse("2020-03-17T07:24:21.960+0000"),
5171
+ # description: "Dependencies for the blank-java sample app.",
5172
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-java-lib:6",
5173
+ # version: 6,
5174
+ # },
5175
+ # ],
5176
+ # }
5177
+ #
4366
5178
  # @example Request syntax with placeholder values
4367
5179
  #
4368
5180
  # resp = client.list_layer_versions({
@@ -4442,6 +5254,35 @@ module Aws::Lambda
4442
5254
  #
4443
5255
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4444
5256
  #
5257
+ #
5258
+ # @example Example: To list the layers that are compatible with your function's runtime
5259
+ #
5260
+ # # The following example returns information about layers that are compatible with the Python 3.7 runtime.
5261
+ #
5262
+ # resp = client.list_layers({
5263
+ # compatible_runtime: "python3.7",
5264
+ # })
5265
+ #
5266
+ # resp.to_h outputs the following:
5267
+ # {
5268
+ # layers: [
5269
+ # {
5270
+ # latest_matching_version: {
5271
+ # compatible_runtimes: [
5272
+ # "python3.6",
5273
+ # "python3.7",
5274
+ # ],
5275
+ # created_date: Time.parse("2018-11-15T00:37:46.592+0000"),
5276
+ # description: "My layer",
5277
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2",
5278
+ # version: 2,
5279
+ # },
5280
+ # layer_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer",
5281
+ # layer_name: "my-layer",
5282
+ # },
5283
+ # ],
5284
+ # }
5285
+ #
4445
5286
  # @example Request syntax with placeholder values
4446
5287
  #
4447
5288
  # resp = client.list_layers({
@@ -4508,6 +5349,37 @@ module Aws::Lambda
4508
5349
  #
4509
5350
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4510
5351
  #
5352
+ #
5353
+ # @example Example: To get a list of provisioned concurrency configurations
5354
+ #
5355
+ # # The following example returns a list of provisioned concurrency configurations for a function named my-function.
5356
+ #
5357
+ # resp = client.list_provisioned_concurrency_configs({
5358
+ # function_name: "my-function",
5359
+ # })
5360
+ #
5361
+ # resp.to_h outputs the following:
5362
+ # {
5363
+ # provisioned_concurrency_configs: [
5364
+ # {
5365
+ # allocated_provisioned_concurrent_executions: 100,
5366
+ # available_provisioned_concurrent_executions: 100,
5367
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN",
5368
+ # last_modified: Time.parse("2019-12-31T20:29:00+0000"),
5369
+ # requested_provisioned_concurrent_executions: 100,
5370
+ # status: "READY",
5371
+ # },
5372
+ # {
5373
+ # allocated_provisioned_concurrent_executions: 100,
5374
+ # available_provisioned_concurrent_executions: 100,
5375
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE",
5376
+ # last_modified: Time.parse("2019-12-31T20:28:49+0000"),
5377
+ # requested_provisioned_concurrent_executions: 100,
5378
+ # status: "READY",
5379
+ # },
5380
+ # ],
5381
+ # }
5382
+ #
4511
5383
  # @example Request syntax with placeholder values
4512
5384
  #
4513
5385
  # resp = client.list_provisioned_concurrency_configs({
@@ -4537,7 +5409,8 @@ module Aws::Lambda
4537
5409
  req.send_request(options)
4538
5410
  end
4539
5411
 
4540
- # Returns a function's [tags][1]. You can also view tags with
5412
+ # Returns a function, event source mapping, or code signing
5413
+ # configuration's [tags][1]. You can also view funciton tags with
4541
5414
  # GetFunction.
4542
5415
  #
4543
5416
  #
@@ -4545,17 +5418,34 @@ module Aws::Lambda
4545
5418
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/tagging.html
4546
5419
  #
4547
5420
  # @option params [required, String] :resource
4548
- # The function's Amazon Resource Name (ARN). Note: Lambda does not
4549
- # support adding tags to aliases or versions.
5421
+ # The resource's Amazon Resource Name (ARN). Note: Lambda does not
5422
+ # support adding tags to function aliases or versions.
4550
5423
  #
4551
5424
  # @return [Types::ListTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4552
5425
  #
4553
5426
  # * {Types::ListTagsResponse#tags #tags} => Hash&lt;String,String&gt;
4554
5427
  #
5428
+ #
5429
+ # @example Example: To retrieve the list of tags for a Lambda function
5430
+ #
5431
+ # # The following example displays the tags attached to the my-function Lambda function.
5432
+ #
5433
+ # resp = client.list_tags({
5434
+ # resource: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5435
+ # })
5436
+ #
5437
+ # resp.to_h outputs the following:
5438
+ # {
5439
+ # tags: {
5440
+ # "Category" => "Web Tools",
5441
+ # "Department" => "Sales",
5442
+ # },
5443
+ # }
5444
+ #
4555
5445
  # @example Request syntax with placeholder values
4556
5446
  #
4557
5447
  # resp = client.list_tags({
4558
- # resource: "FunctionArn", # required
5448
+ # resource: "TaggableResource", # required
4559
5449
  # })
4560
5450
  #
4561
5451
  # @example Response structure
@@ -4610,6 +5500,71 @@ module Aws::Lambda
4610
5500
  #
4611
5501
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4612
5502
  #
5503
+ #
5504
+ # @example Example: To list versions of a function
5505
+ #
5506
+ # # The following example returns a list of versions of a function named my-function
5507
+ #
5508
+ # resp = client.list_versions_by_function({
5509
+ # function_name: "my-function",
5510
+ # })
5511
+ #
5512
+ # resp.to_h outputs the following:
5513
+ # {
5514
+ # versions: [
5515
+ # {
5516
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
5517
+ # code_size: 5797206,
5518
+ # description: "Process image objects from Amazon S3.",
5519
+ # environment: {
5520
+ # variables: {
5521
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
5522
+ # "PREFIX" => "inbound",
5523
+ # },
5524
+ # },
5525
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5526
+ # function_name: "my-function",
5527
+ # handler: "index.handler",
5528
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
5529
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
5530
+ # memory_size: 256,
5531
+ # revision_id: "850ca006-2d98-4ff4-86db-8766e9d32fe9",
5532
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
5533
+ # runtime: "nodejs12.x",
5534
+ # timeout: 15,
5535
+ # tracing_config: {
5536
+ # mode: "Active",
5537
+ # },
5538
+ # version: "$LATEST",
5539
+ # },
5540
+ # {
5541
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
5542
+ # code_size: 5797206,
5543
+ # description: "Process image objects from Amazon S3.",
5544
+ # environment: {
5545
+ # variables: {
5546
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
5547
+ # "PREFIX" => "inbound",
5548
+ # },
5549
+ # },
5550
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5551
+ # function_name: "my-function",
5552
+ # handler: "index.handler",
5553
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
5554
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
5555
+ # memory_size: 256,
5556
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
5557
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
5558
+ # runtime: "nodejs12.x",
5559
+ # timeout: 5,
5560
+ # tracing_config: {
5561
+ # mode: "Active",
5562
+ # },
5563
+ # version: "1",
5564
+ # },
5565
+ # ],
5566
+ # }
5567
+ #
4613
5568
  # @example Request syntax with placeholder values
4614
5569
  #
4615
5570
  # resp = client.list_versions_by_function({
@@ -4760,6 +5715,45 @@ module Aws::Lambda
4760
5715
  # * {Types::PublishLayerVersionResponse#license_info #license_info} => String
4761
5716
  # * {Types::PublishLayerVersionResponse#compatible_architectures #compatible_architectures} => Array&lt;String&gt;
4762
5717
  #
5718
+ #
5719
+ # @example Example: To create a Lambda layer version
5720
+ #
5721
+ # # The following example creates a new Python library layer version. The command retrieves the layer content a file named
5722
+ # # layer.zip in the specified S3 bucket.
5723
+ #
5724
+ # resp = client.publish_layer_version({
5725
+ # compatible_runtimes: [
5726
+ # "python3.6",
5727
+ # "python3.7",
5728
+ # ],
5729
+ # content: {
5730
+ # s3_bucket: "lambda-layers-us-west-2-123456789012",
5731
+ # s3_key: "layer.zip",
5732
+ # },
5733
+ # description: "My Python layer",
5734
+ # layer_name: "my-layer",
5735
+ # license_info: "MIT",
5736
+ # })
5737
+ #
5738
+ # resp.to_h outputs the following:
5739
+ # {
5740
+ # compatible_runtimes: [
5741
+ # "python3.6",
5742
+ # "python3.7",
5743
+ # ],
5744
+ # content: {
5745
+ # code_sha_256: "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=",
5746
+ # code_size: 169,
5747
+ # location: "https://awslambda-us-west-2-layers.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...",
5748
+ # },
5749
+ # created_date: Time.parse("2018-11-14T23:03:52.894+0000"),
5750
+ # description: "My Python layer",
5751
+ # layer_arn: "arn:aws:lambda:us-west-2:123456789012:layer:my-layer",
5752
+ # layer_version_arn: "arn:aws:lambda:us-west-2:123456789012:layer:my-layer:1",
5753
+ # license_info: "MIT",
5754
+ # version: 1,
5755
+ # }
5756
+ #
4763
5757
  # @example Request syntax with placeholder values
4764
5758
  #
4765
5759
  # resp = client.publish_layer_version({
@@ -4889,6 +5883,46 @@ module Aws::Lambda
4889
5883
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
4890
5884
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
4891
5885
  #
5886
+ #
5887
+ # @example Example: To publish a version of a Lambda function
5888
+ #
5889
+ # # This operation publishes a version of a Lambda function
5890
+ #
5891
+ # resp = client.publish_version({
5892
+ # code_sha_256: "",
5893
+ # description: "",
5894
+ # function_name: "myFunction",
5895
+ # })
5896
+ #
5897
+ # resp.to_h outputs the following:
5898
+ # {
5899
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
5900
+ # code_size: 5797206,
5901
+ # description: "Process image objects from Amazon S3.",
5902
+ # environment: {
5903
+ # variables: {
5904
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
5905
+ # "PREFIX" => "inbound",
5906
+ # },
5907
+ # },
5908
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5909
+ # function_name: "my-function",
5910
+ # handler: "index.handler",
5911
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
5912
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
5913
+ # last_update_status: "Successful",
5914
+ # memory_size: 256,
5915
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
5916
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
5917
+ # runtime: "nodejs12.x",
5918
+ # state: "Active",
5919
+ # timeout: 5,
5920
+ # tracing_config: {
5921
+ # mode: "Active",
5922
+ # },
5923
+ # version: "1",
5924
+ # }
5925
+ #
4892
5926
  # @example Request syntax with placeholder values
4893
5927
  #
4894
5928
  # resp = client.publish_version({
@@ -5062,6 +6096,21 @@ module Aws::Lambda
5062
6096
  #
5063
6097
  # * {Types::Concurrency#reserved_concurrent_executions #reserved_concurrent_executions} => Integer
5064
6098
  #
6099
+ #
6100
+ # @example Example: To configure a reserved concurrency limit for a function
6101
+ #
6102
+ # # The following example configures 100 reserved concurrent executions for the my-function function.
6103
+ #
6104
+ # resp = client.put_function_concurrency({
6105
+ # function_name: "my-function",
6106
+ # reserved_concurrent_executions: 100,
6107
+ # })
6108
+ #
6109
+ # resp.to_h outputs the following:
6110
+ # {
6111
+ # reserved_concurrent_executions: 100,
6112
+ # }
6113
+ #
5065
6114
  # @example Request syntax with placeholder values
5066
6115
  #
5067
6116
  # resp = client.put_function_concurrency({
@@ -5157,6 +6206,31 @@ module Aws::Lambda
5157
6206
  # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
5158
6207
  # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
5159
6208
  #
6209
+ #
6210
+ # @example Example: To configure error handling for asynchronous invocation
6211
+ #
6212
+ # # The following example sets a maximum event age of one hour and disables retries for the specified function.
6213
+ #
6214
+ # resp = client.put_function_event_invoke_config({
6215
+ # function_name: "my-function",
6216
+ # maximum_event_age_in_seconds: 3600,
6217
+ # maximum_retry_attempts: 0,
6218
+ # })
6219
+ #
6220
+ # resp.to_h outputs the following:
6221
+ # {
6222
+ # destination_config: {
6223
+ # on_failure: {
6224
+ # },
6225
+ # on_success: {
6226
+ # },
6227
+ # },
6228
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST",
6229
+ # last_modified: Time.parse("${timestamp}"),
6230
+ # maximum_event_age_in_seconds: 3600,
6231
+ # maximum_retry_attempts: 0,
6232
+ # }
6233
+ #
5160
6234
  # @example Request syntax with placeholder values
5161
6235
  #
5162
6236
  # resp = client.put_function_event_invoke_config({
@@ -5311,6 +6385,25 @@ module Aws::Lambda
5311
6385
  # * {Types::PutProvisionedConcurrencyConfigResponse#status_reason #status_reason} => String
5312
6386
  # * {Types::PutProvisionedConcurrencyConfigResponse#last_modified #last_modified} => Time
5313
6387
  #
6388
+ #
6389
+ # @example Example: To allocate provisioned concurrency
6390
+ #
6391
+ # # The following example allocates 100 provisioned concurrency for the BLUE alias of the specified function.
6392
+ #
6393
+ # resp = client.put_provisioned_concurrency_config({
6394
+ # function_name: "my-function",
6395
+ # provisioned_concurrent_executions: 100,
6396
+ # qualifier: "BLUE",
6397
+ # })
6398
+ #
6399
+ # resp.to_h outputs the following:
6400
+ # {
6401
+ # allocated_provisioned_concurrent_executions: 0,
6402
+ # last_modified: Time.parse("2019-11-21T19:32:12+0000"),
6403
+ # requested_provisioned_concurrent_executions: 100,
6404
+ # status: "IN_PROGRESS",
6405
+ # }
6406
+ #
5314
6407
  # @example Request syntax with placeholder values
5315
6408
  #
5316
6409
  # resp = client.put_provisioned_concurrency_config({
@@ -5337,6 +6430,12 @@ module Aws::Lambda
5337
6430
  req.send_request(options)
5338
6431
  end
5339
6432
 
6433
+ # <note markdown="1"> The option to configure public-access settings, and to use the
6434
+ # PutPublicAccessBlock and GetPublicAccessBlock APIs, won't be
6435
+ # available in all Amazon Web Services Regions until September 30, 2024.
6436
+ #
6437
+ # </note>
6438
+ #
5340
6439
  # Configure your function's public-access settings.
5341
6440
  #
5342
6441
  # To control public access to a Lambda function, you can choose whether
@@ -5399,6 +6498,13 @@ module Aws::Lambda
5399
6498
  req.send_request(options)
5400
6499
  end
5401
6500
 
6501
+ # <note markdown="1"> The option to create and modify full JSON resource-based policies, and
6502
+ # to use the PutResourcePolicy, GetResourcePolicy, and
6503
+ # DeleteResourcePolicy APIs, won't be available in all Amazon Web
6504
+ # Services Regions until September 30, 2024.
6505
+ #
6506
+ # </note>
6507
+ #
5402
6508
  # Adds a [resource-based policy][1] to a function. You can use
5403
6509
  # resource-based policies to grant access to other [Amazon Web Services
5404
6510
  # accounts][2], [organizations][3], or [services][4]. Resource-based
@@ -5583,6 +6689,17 @@ module Aws::Lambda
5583
6689
  #
5584
6690
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5585
6691
  #
6692
+ #
6693
+ # @example Example: To delete layer-version permissions
6694
+ #
6695
+ # # The following example deletes permission for an account to configure a layer version.
6696
+ #
6697
+ # resp = client.remove_layer_version_permission({
6698
+ # layer_name: "my-layer",
6699
+ # statement_id: "xaccount",
6700
+ # version_number: 1,
6701
+ # })
6702
+ #
5586
6703
  # @example Request syntax with placeholder values
5587
6704
  #
5588
6705
  # resp = client.remove_layer_version_permission({
@@ -5636,6 +6753,18 @@ module Aws::Lambda
5636
6753
  #
5637
6754
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5638
6755
  #
6756
+ #
6757
+ # @example Example: To remove a Lambda function's permissions
6758
+ #
6759
+ # # The following example removes a permissions statement named xaccount from the PROD alias of a function named
6760
+ # # my-function.
6761
+ #
6762
+ # resp = client.remove_permission({
6763
+ # function_name: "my-function",
6764
+ # qualifier: "PROD",
6765
+ # statement_id: "xaccount",
6766
+ # })
6767
+ #
5639
6768
  # @example Request syntax with placeholder values
5640
6769
  #
5641
6770
  # resp = client.remove_permission({
@@ -5654,24 +6783,38 @@ module Aws::Lambda
5654
6783
  req.send_request(options)
5655
6784
  end
5656
6785
 
5657
- # Adds [tags][1] to a function.
6786
+ # Adds [tags][1] to a function, event source mapping, or code signing
6787
+ # configuration.
5658
6788
  #
5659
6789
  #
5660
6790
  #
5661
6791
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/tagging.html
5662
6792
  #
5663
6793
  # @option params [required, String] :resource
5664
- # The function's Amazon Resource Name (ARN).
6794
+ # The resource's Amazon Resource Name (ARN).
5665
6795
  #
5666
6796
  # @option params [required, Hash<String,String>] :tags
5667
- # A list of tags to apply to the function.
6797
+ # A list of tags to apply to the resource.
5668
6798
  #
5669
6799
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5670
6800
  #
6801
+ #
6802
+ # @example Example: To add tags to an existing Lambda function
6803
+ #
6804
+ # # The following example adds a tag with the key name DEPARTMENT and a value of 'Department A' to the specified Lambda
6805
+ # # function.
6806
+ #
6807
+ # resp = client.tag_resource({
6808
+ # resource: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
6809
+ # tags: {
6810
+ # "DEPARTMENT" => "Department A",
6811
+ # },
6812
+ # })
6813
+ #
5671
6814
  # @example Request syntax with placeholder values
5672
6815
  #
5673
6816
  # resp = client.tag_resource({
5674
- # resource: "FunctionArn", # required
6817
+ # resource: "TaggableResource", # required
5675
6818
  # tags: { # required
5676
6819
  # "TagKey" => "TagValue",
5677
6820
  # },
@@ -5686,24 +6829,37 @@ module Aws::Lambda
5686
6829
  req.send_request(options)
5687
6830
  end
5688
6831
 
5689
- # Removes [tags][1] from a function.
6832
+ # Removes [tags][1] from a function, event source mapping, or code
6833
+ # signing configuration.
5690
6834
  #
5691
6835
  #
5692
6836
  #
5693
6837
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/tagging.html
5694
6838
  #
5695
6839
  # @option params [required, String] :resource
5696
- # The function's Amazon Resource Name (ARN).
6840
+ # The resource's Amazon Resource Name (ARN).
5697
6841
  #
5698
6842
  # @option params [required, Array<String>] :tag_keys
5699
- # A list of tag keys to remove from the function.
6843
+ # A list of tag keys to remove from the resource.
5700
6844
  #
5701
6845
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5702
6846
  #
6847
+ #
6848
+ # @example Example: To remove tags from an existing Lambda function
6849
+ #
6850
+ # # The following example removes the tag with the key name DEPARTMENT tag from the my-function Lambda function.
6851
+ #
6852
+ # resp = client.untag_resource({
6853
+ # resource: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
6854
+ # tag_keys: [
6855
+ # "DEPARTMENT",
6856
+ # ],
6857
+ # })
6858
+ #
5703
6859
  # @example Request syntax with placeholder values
5704
6860
  #
5705
6861
  # resp = client.untag_resource({
5706
- # resource: "FunctionArn", # required
6862
+ # resource: "TaggableResource", # required
5707
6863
  # tag_keys: ["TagKey"], # required
5708
6864
  # })
5709
6865
  #
@@ -5767,6 +6923,36 @@ module Aws::Lambda
5767
6923
  # * {Types::AliasConfiguration#routing_config #routing_config} => Types::AliasRoutingConfiguration
5768
6924
  # * {Types::AliasConfiguration#revision_id #revision_id} => String
5769
6925
  #
6926
+ #
6927
+ # @example Example: To update a function alias
6928
+ #
6929
+ # # The following example updates the alias named BLUE to send 30% of traffic to version 2 and 70% to version 1.
6930
+ #
6931
+ # resp = client.update_alias({
6932
+ # function_name: "my-function",
6933
+ # function_version: "2",
6934
+ # name: "BLUE",
6935
+ # routing_config: {
6936
+ # additional_version_weights: {
6937
+ # "1" => 0.7,
6938
+ # },
6939
+ # },
6940
+ # })
6941
+ #
6942
+ # resp.to_h outputs the following:
6943
+ # {
6944
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:BLUE",
6945
+ # description: "Production environment BLUE.",
6946
+ # function_version: "2",
6947
+ # name: "BLUE",
6948
+ # revision_id: "594f41fb-xmpl-4c20-95c7-6ca5f2a92c93",
6949
+ # routing_config: {
6950
+ # additional_version_weights: {
6951
+ # "1" => 0.7,
6952
+ # },
6953
+ # },
6954
+ # }
6955
+ #
5770
6956
  # @example Request syntax with placeholder values
5771
6957
  #
5772
6958
  # resp = client.update_alias({
@@ -6094,6 +7280,31 @@ module Aws::Lambda
6094
7280
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
6095
7281
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
6096
7282
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
7283
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
7284
+ #
7285
+ #
7286
+ # @example Example: To update a Lambda function event source mapping
7287
+ #
7288
+ # # This operation updates a Lambda function event source mapping
7289
+ #
7290
+ # resp = client.update_event_source_mapping({
7291
+ # batch_size: 123,
7292
+ # enabled: true,
7293
+ # function_name: "myFunction",
7294
+ # uuid: "1234xCy789012",
7295
+ # })
7296
+ #
7297
+ # resp.to_h outputs the following:
7298
+ # {
7299
+ # batch_size: 123,
7300
+ # event_source_arn: "arn:aws:s3:::examplebucket/*",
7301
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:myFunction",
7302
+ # last_modified: Time.parse("2016-11-21T19:49:20.006+0000"),
7303
+ # last_processing_result: "",
7304
+ # state: "",
7305
+ # state_transition_reason: "",
7306
+ # uuid: "1234xCy789012",
7307
+ # }
6097
7308
  #
6098
7309
  # @example Request syntax with placeholder values
6099
7310
  #
@@ -6184,6 +7395,7 @@ module Aws::Lambda
6184
7395
  # resp.kms_key_arn #=> String
6185
7396
  # resp.filter_criteria_error.error_code #=> String
6186
7397
  # resp.filter_criteria_error.message #=> String
7398
+ # resp.event_source_mapping_arn #=> String
6187
7399
  #
6188
7400
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping AWS API Documentation
6189
7401
  #
@@ -6321,6 +7533,38 @@ module Aws::Lambda
6321
7533
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
6322
7534
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
6323
7535
  #
7536
+ #
7537
+ # @example Example: To update a Lambda function's code
7538
+ #
7539
+ # # The following example replaces the code of the unpublished ($LATEST) version of a function named my-function with the
7540
+ # # contents of the specified zip file in Amazon S3.
7541
+ #
7542
+ # resp = client.update_function_code({
7543
+ # function_name: "my-function",
7544
+ # s3_bucket: "my-bucket-1xpuxmplzrlbh",
7545
+ # s3_key: "function.zip",
7546
+ # })
7547
+ #
7548
+ # resp.to_h outputs the following:
7549
+ # {
7550
+ # code_sha_256: "PFn4S+er27qk+UuZSTKEQfNKG/XNn7QJs90mJgq6oH8=",
7551
+ # code_size: 308,
7552
+ # description: "",
7553
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function",
7554
+ # function_name: "my-function",
7555
+ # handler: "index.handler",
7556
+ # last_modified: Time.parse("2019-08-14T22:26:11.234+0000"),
7557
+ # memory_size: 128,
7558
+ # revision_id: "873282ed-xmpl-4dc8-a069-d0c647e470c6",
7559
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
7560
+ # runtime: "nodejs12.x",
7561
+ # timeout: 3,
7562
+ # tracing_config: {
7563
+ # mode: "PassThrough",
7564
+ # },
7565
+ # version: "$LATEST",
7566
+ # }
7567
+ #
6324
7568
  # @example Request syntax with placeholder values
6325
7569
  #
6326
7570
  # resp = client.update_function_code({
@@ -6636,6 +7880,37 @@ module Aws::Lambda
6636
7880
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
6637
7881
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
6638
7882
  #
7883
+ #
7884
+ # @example Example: To update a Lambda function's configuration
7885
+ #
7886
+ # # The following example modifies the memory size to be 256 MB for the unpublished ($LATEST) version of a function named
7887
+ # # my-function.
7888
+ #
7889
+ # resp = client.update_function_configuration({
7890
+ # function_name: "my-function",
7891
+ # memory_size: 256,
7892
+ # })
7893
+ #
7894
+ # resp.to_h outputs the following:
7895
+ # {
7896
+ # code_sha_256: "PFn4S+er27qk+UuZSTKEQfNKG/XNn7QJs90mJgq6oH8=",
7897
+ # code_size: 308,
7898
+ # description: "",
7899
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function",
7900
+ # function_name: "my-function",
7901
+ # handler: "index.handler",
7902
+ # last_modified: Time.parse("2019-08-14T22:26:11.234+0000"),
7903
+ # memory_size: 256,
7904
+ # revision_id: "873282ed-xmpl-4dc8-a069-d0c647e470c6",
7905
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
7906
+ # runtime: "nodejs12.x",
7907
+ # timeout: 3,
7908
+ # tracing_config: {
7909
+ # mode: "PassThrough",
7910
+ # },
7911
+ # version: "$LATEST",
7912
+ # }
7913
+ #
6639
7914
  # @example Request syntax with placeholder values
6640
7915
  #
6641
7916
  # resp = client.update_function_configuration({
@@ -6821,6 +8096,36 @@ module Aws::Lambda
6821
8096
  # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
6822
8097
  # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
6823
8098
  #
8099
+ #
8100
+ # @example Example: To update an asynchronous invocation configuration
8101
+ #
8102
+ # # The following example adds an on-failure destination to the existing asynchronous invocation configuration for a
8103
+ # # function named my-function.
8104
+ #
8105
+ # resp = client.update_function_event_invoke_config({
8106
+ # destination_config: {
8107
+ # on_failure: {
8108
+ # destination: "arn:aws:sqs:us-east-2:123456789012:destination",
8109
+ # },
8110
+ # },
8111
+ # function_name: "my-function",
8112
+ # })
8113
+ #
8114
+ # resp.to_h outputs the following:
8115
+ # {
8116
+ # destination_config: {
8117
+ # on_failure: {
8118
+ # destination: "arn:aws:sqs:us-east-2:123456789012:destination",
8119
+ # },
8120
+ # on_success: {
8121
+ # },
8122
+ # },
8123
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST",
8124
+ # last_modified: Time.parse(1573687896.493),
8125
+ # maximum_event_age_in_seconds: 3600,
8126
+ # maximum_retry_attempts: 0,
8127
+ # }
8128
+ #
6824
8129
  # @example Request syntax with placeholder values
6825
8130
  #
6826
8131
  # resp = client.update_function_event_invoke_config({
@@ -6986,7 +8291,7 @@ module Aws::Lambda
6986
8291
  tracer: tracer
6987
8292
  )
6988
8293
  context[:gem_name] = 'aws-sdk-lambda'
6989
- context[:gem_version] = '1.131.0'
8294
+ context[:gem_version] = '1.132.0'
6990
8295
  Seahorse::Client::Request.new(handlers, context)
6991
8296
  end
6992
8297