aws-sdk-lambda 1.131.0 → 1.133.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -132,13 +132,15 @@ module Aws::Lambda
132
132
  # locations will be searched for credentials:
133
133
  #
134
134
  # * `Aws.config[:credentials]`
135
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
136
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
135
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
136
+ # `:account_id` options.
137
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
138
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
137
139
  # * `~/.aws/credentials`
138
140
  # * `~/.aws/config`
139
141
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
140
142
  # are very aggressive. Construct and pass an instance of
141
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
143
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
142
144
  # enable retries and extended timeouts. Instance profile credential
143
145
  # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
144
146
  # to true.
@@ -157,6 +159,8 @@ module Aws::Lambda
157
159
  #
158
160
  # @option options [String] :access_key_id
159
161
  #
162
+ # @option options [String] :account_id
163
+ #
160
164
  # @option options [Boolean] :active_endpoint_cache (false)
161
165
  # When set to `true`, a thread polling for endpoints will be running in
162
166
  # the background every 60 secs (default). Defaults to `false`.
@@ -380,7 +384,9 @@ module Aws::Lambda
380
384
  # sending the request.
381
385
  #
382
386
  # @option options [Aws::Lambda::EndpointProvider] :endpoint_provider
383
- # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Lambda::EndpointParameters`
387
+ # The endpoint provider used to resolve endpoints. Any object that responds to
388
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
389
+ # `Aws::Lambda::EndpointParameters`.
384
390
  #
385
391
  # @option options [Float] :http_continue_timeout (1)
386
392
  # The number of seconds to wait for a 100-continue response before sending the
@@ -501,6 +507,25 @@ module Aws::Lambda
501
507
  # * {Types::AddLayerVersionPermissionResponse#statement #statement} => String
502
508
  # * {Types::AddLayerVersionPermissionResponse#revision_id #revision_id} => String
503
509
  #
510
+ #
511
+ # @example Example: To add permissions to a layer version
512
+ #
513
+ # # The following example grants permission for the account 223456789012 to use version 1 of a layer named my-layer.
514
+ #
515
+ # resp = client.add_layer_version_permission({
516
+ # action: "lambda:GetLayerVersion",
517
+ # layer_name: "my-layer",
518
+ # principal: "223456789012",
519
+ # statement_id: "xaccount",
520
+ # version_number: 1,
521
+ # })
522
+ #
523
+ # resp.to_h outputs the following:
524
+ # {
525
+ # revision_id: "35d87451-f796-4a3f-a618-95a3671b0a0c",
526
+ # 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\"}",
527
+ # }
528
+ #
504
529
  # @example Request syntax with placeholder values
505
530
  #
506
531
  # resp = client.add_layer_version_permission({
@@ -527,13 +552,12 @@ module Aws::Lambda
527
552
  req.send_request(options)
528
553
  end
529
554
 
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.
555
+ # Grants a [principal][1] permission to use a function. You can apply
556
+ # the policy at the function level, or specify a qualifier to restrict
557
+ # access to a single version or alias. If you use a qualifier, the
558
+ # invoker must use the full Amazon Resource Name (ARN) of that version
559
+ # or alias to invoke the function. Note: Lambda does not support adding
560
+ # policies to version $LATEST.
537
561
  #
538
562
  # To grant permission to another account, specify the account ID as the
539
563
  # `Principal`. To grant permission to an organization defined in
@@ -548,11 +572,12 @@ module Aws::Lambda
548
572
  #
549
573
  # This operation adds a statement to a resource-based permissions policy
550
574
  # for the function. For more information about function policies, see
551
- # [Using resource-based policies for Lambda][1].
575
+ # [Using resource-based policies for Lambda][2].
552
576
  #
553
577
  #
554
578
  #
555
- # [1]: https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html
579
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying
580
+ # [2]: https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html
556
581
  #
557
582
  # @option params [required, String] :function_name
558
583
  # The name or ARN of the Lambda function, version, or alias.
@@ -580,10 +605,10 @@ module Aws::Lambda
580
605
  # `lambda:InvokeFunction` or `lambda:GetFunction`.
581
606
  #
582
607
  # @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.
608
+ # The Amazon Web Servicesservice, Amazon Web Services account, IAM user,
609
+ # or IAM role that invokes the function. If you specify a service, use
610
+ # `SourceArn` or `SourceAccount` to limit who can invoke the function
611
+ # through that service.
587
612
  #
588
613
  # @option params [String] :source_arn
589
614
  # For Amazon Web Servicesservices, the ARN of the Amazon Web Services
@@ -632,6 +657,42 @@ module Aws::Lambda
632
657
  #
633
658
  # * {Types::AddPermissionResponse#statement #statement} => String
634
659
  #
660
+ #
661
+ # @example Example: To grant Amazon S3 permission to invoke a function
662
+ #
663
+ # # The following example adds permission for Amazon S3 to invoke a Lambda function named my-function for notifications from
664
+ # # a bucket named my-bucket-1xpuxmplzrlbh in account 123456789012.
665
+ #
666
+ # resp = client.add_permission({
667
+ # action: "lambda:InvokeFunction",
668
+ # function_name: "my-function",
669
+ # principal: "s3.amazonaws.com",
670
+ # source_account: "123456789012",
671
+ # source_arn: "arn:aws:s3:::my-bucket-1xpuxmplzrlbh/*",
672
+ # statement_id: "s3",
673
+ # })
674
+ #
675
+ # resp.to_h outputs the following:
676
+ # {
677
+ # 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\"}}}",
678
+ # }
679
+ #
680
+ # @example Example: To grant another account permission to invoke a function
681
+ #
682
+ # # The following example adds permission for account 223456789012 invoke a Lambda function named my-function.
683
+ #
684
+ # resp = client.add_permission({
685
+ # action: "lambda:InvokeFunction",
686
+ # function_name: "my-function",
687
+ # principal: "223456789012",
688
+ # statement_id: "xaccount",
689
+ # })
690
+ #
691
+ # resp.to_h outputs the following:
692
+ # {
693
+ # 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\"}",
694
+ # }
695
+ #
635
696
  # @example Request syntax with placeholder values
636
697
  #
637
698
  # resp = client.add_permission({
@@ -713,6 +774,27 @@ module Aws::Lambda
713
774
  # * {Types::AliasConfiguration#routing_config #routing_config} => Types::AliasRoutingConfiguration
714
775
  # * {Types::AliasConfiguration#revision_id #revision_id} => String
715
776
  #
777
+ #
778
+ # @example Example: To create an alias for a Lambda function
779
+ #
780
+ # # The following example creates an alias named LIVE that points to version 1 of the my-function Lambda function.
781
+ #
782
+ # resp = client.create_alias({
783
+ # description: "alias for live version of function",
784
+ # function_name: "my-function",
785
+ # function_version: "1",
786
+ # name: "LIVE",
787
+ # })
788
+ #
789
+ # resp.to_h outputs the following:
790
+ # {
791
+ # alias_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:LIVE",
792
+ # description: "alias for live version of function",
793
+ # function_version: "1",
794
+ # name: "LIVE",
795
+ # revision_id: "873282ed-xmpl-4dc8-a069-d0c647e470c6",
796
+ # }
797
+ #
716
798
  # @example Request syntax with placeholder values
717
799
  #
718
800
  # resp = client.create_alias({
@@ -765,6 +847,9 @@ module Aws::Lambda
765
847
  # The code signing policies define the actions to take if the validation
766
848
  # checks fail.
767
849
  #
850
+ # @option params [Hash<String,String>] :tags
851
+ # A list of tags to add to the code signing configuration.
852
+ #
768
853
  # @return [Types::CreateCodeSigningConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
769
854
  #
770
855
  # * {Types::CreateCodeSigningConfigResponse#code_signing_config #code_signing_config} => Types::CodeSigningConfig
@@ -779,6 +864,9 @@ module Aws::Lambda
779
864
  # code_signing_policies: {
780
865
  # untrusted_artifact_on_deployment: "Warn", # accepts Warn, Enforce
781
866
  # },
867
+ # tags: {
868
+ # "TagKey" => "TagValue",
869
+ # },
782
870
  # })
783
871
  #
784
872
  # @example Response structure
@@ -1003,6 +1091,9 @@ module Aws::Lambda
1003
1091
  # set to infinite (-1), failed records are retried until the record
1004
1092
  # expires.
1005
1093
  #
1094
+ # @option params [Hash<String,String>] :tags
1095
+ # A list of tags to apply to the event source mapping.
1096
+ #
1006
1097
  # @option params [Integer] :tumbling_window_in_seconds
1007
1098
  # (Kinesis and DynamoDB Streams only) The duration in seconds of a
1008
1099
  # processing window for DynamoDB and Kinesis Streams event sources. A
@@ -1086,6 +1177,29 @@ module Aws::Lambda
1086
1177
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
1087
1178
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
1088
1179
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
1180
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
1181
+ #
1182
+ #
1183
+ # @example Example: To create a mapping between an event source and an AWS Lambda function
1184
+ #
1185
+ # # The following example creates a mapping between an SQS queue and the my-function Lambda function.
1186
+ #
1187
+ # resp = client.create_event_source_mapping({
1188
+ # batch_size: 5,
1189
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:my-queue",
1190
+ # function_name: "my-function",
1191
+ # })
1192
+ #
1193
+ # resp.to_h outputs the following:
1194
+ # {
1195
+ # batch_size: 5,
1196
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:my-queue",
1197
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
1198
+ # last_modified: Time.parse(1569284520.333),
1199
+ # state: "Creating",
1200
+ # state_transition_reason: "USER_INITIATED",
1201
+ # uuid: "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
1202
+ # }
1089
1203
  #
1090
1204
  # @example Request syntax with placeholder values
1091
1205
  #
@@ -1116,6 +1230,9 @@ module Aws::Lambda
1116
1230
  # maximum_record_age_in_seconds: 1,
1117
1231
  # bisect_batch_on_function_error: false,
1118
1232
  # maximum_retry_attempts: 1,
1233
+ # tags: {
1234
+ # "TagKey" => "TagValue",
1235
+ # },
1119
1236
  # tumbling_window_in_seconds: 1,
1120
1237
  # topics: ["Topic"],
1121
1238
  # queues: ["Queue"],
@@ -1191,6 +1308,7 @@ module Aws::Lambda
1191
1308
  # resp.kms_key_arn #=> String
1192
1309
  # resp.filter_criteria_error.error_code #=> String
1193
1310
  # resp.filter_criteria_error.message #=> String
1311
+ # resp.event_source_mapping_arn #=> String
1194
1312
  #
1195
1313
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping AWS API Documentation
1196
1314
  #
@@ -1498,6 +1616,69 @@ module Aws::Lambda
1498
1616
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
1499
1617
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
1500
1618
  #
1619
+ #
1620
+ # @example Example: To create a function
1621
+ #
1622
+ # # The following example creates a function with a deployment package in Amazon S3 and enables X-Ray tracing and
1623
+ # # environment variable encryption.
1624
+ #
1625
+ # resp = client.create_function({
1626
+ # code: {
1627
+ # s3_bucket: "my-bucket-1xpuxmplzrlbh",
1628
+ # s3_key: "function.zip",
1629
+ # },
1630
+ # description: "Process image objects from Amazon S3.",
1631
+ # environment: {
1632
+ # variables: {
1633
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
1634
+ # "PREFIX" => "inbound",
1635
+ # },
1636
+ # },
1637
+ # function_name: "my-function",
1638
+ # handler: "index.handler",
1639
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
1640
+ # memory_size: 256,
1641
+ # publish: true,
1642
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
1643
+ # runtime: "nodejs12.x",
1644
+ # tags: {
1645
+ # "DEPARTMENT" => "Assets",
1646
+ # },
1647
+ # timeout: 15,
1648
+ # tracing_config: {
1649
+ # mode: "Active",
1650
+ # },
1651
+ # })
1652
+ #
1653
+ # resp.to_h outputs the following:
1654
+ # {
1655
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
1656
+ # code_size: 5797206,
1657
+ # description: "Process image objects from Amazon S3.",
1658
+ # environment: {
1659
+ # variables: {
1660
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
1661
+ # "PREFIX" => "inbound",
1662
+ # },
1663
+ # },
1664
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
1665
+ # function_name: "my-function",
1666
+ # handler: "index.handler",
1667
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
1668
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
1669
+ # last_update_status: "Successful",
1670
+ # memory_size: 256,
1671
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
1672
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
1673
+ # runtime: "nodejs12.x",
1674
+ # state: "Active",
1675
+ # timeout: 15,
1676
+ # tracing_config: {
1677
+ # mode: "Active",
1678
+ # },
1679
+ # version: "1",
1680
+ # }
1681
+ #
1501
1682
  # @example Request syntax with placeholder values
1502
1683
  #
1503
1684
  # resp = client.create_function({
@@ -1778,6 +1959,16 @@ module Aws::Lambda
1778
1959
  #
1779
1960
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1780
1961
  #
1962
+ #
1963
+ # @example Example: To delete a Lambda function alias
1964
+ #
1965
+ # # The following example deletes an alias named BLUE from a function named my-function
1966
+ #
1967
+ # resp = client.delete_alias({
1968
+ # function_name: "my-function",
1969
+ # name: "BLUE",
1970
+ # })
1971
+ #
1781
1972
  # @example Request syntax with placeholder values
1782
1973
  #
1783
1974
  # resp = client.delete_alias({
@@ -1861,6 +2052,27 @@ module Aws::Lambda
1861
2052
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
1862
2053
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
1863
2054
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
2055
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
2056
+ #
2057
+ #
2058
+ # @example Example: To delete a Lambda function event source mapping
2059
+ #
2060
+ # # The following example deletes an event source mapping. To get a mapping's UUID, use ListEventSourceMappings.
2061
+ #
2062
+ # resp = client.delete_event_source_mapping({
2063
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2064
+ # })
2065
+ #
2066
+ # resp.to_h outputs the following:
2067
+ # {
2068
+ # batch_size: 5,
2069
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:my-queue",
2070
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function",
2071
+ # last_modified: Time.parse("${timestamp}"),
2072
+ # state: "Enabled",
2073
+ # state_transition_reason: "USER_INITIATED",
2074
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2075
+ # }
1864
2076
  #
1865
2077
  # @example Request syntax with placeholder values
1866
2078
  #
@@ -1911,6 +2123,7 @@ module Aws::Lambda
1911
2123
  # resp.kms_key_arn #=> String
1912
2124
  # resp.filter_criteria_error.error_code #=> String
1913
2125
  # resp.filter_criteria_error.message #=> String
2126
+ # resp.event_source_mapping_arn #=> String
1914
2127
  #
1915
2128
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping AWS API Documentation
1916
2129
  #
@@ -1954,6 +2167,16 @@ module Aws::Lambda
1954
2167
  #
1955
2168
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1956
2169
  #
2170
+ #
2171
+ # @example Example: To delete a version of a Lambda function
2172
+ #
2173
+ # # The following example deletes version 1 of a Lambda function named my-function.
2174
+ #
2175
+ # resp = client.delete_function({
2176
+ # function_name: "my-function",
2177
+ # qualifier: "1",
2178
+ # })
2179
+ #
1957
2180
  # @example Request syntax with placeholder values
1958
2181
  #
1959
2182
  # resp = client.delete_function({
@@ -2023,6 +2246,15 @@ module Aws::Lambda
2023
2246
  #
2024
2247
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2025
2248
  #
2249
+ #
2250
+ # @example Example: To remove the reserved concurrent execution limit from a function
2251
+ #
2252
+ # # The following example deletes the reserved concurrent execution limit from a function named my-function.
2253
+ #
2254
+ # resp = client.delete_function_concurrency({
2255
+ # function_name: "my-function",
2256
+ # })
2257
+ #
2026
2258
  # @example Request syntax with placeholder values
2027
2259
  #
2028
2260
  # resp = client.delete_function_concurrency({
@@ -2066,6 +2298,17 @@ module Aws::Lambda
2066
2298
  #
2067
2299
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2068
2300
  #
2301
+ #
2302
+ # @example Example: To delete an asynchronous invocation configuration
2303
+ #
2304
+ # # The following example deletes the asynchronous invocation configuration for the GREEN alias of a function named
2305
+ # # my-function.
2306
+ #
2307
+ # resp = client.delete_function_event_invoke_config({
2308
+ # function_name: "my-function",
2309
+ # qualifier: "GREEN",
2310
+ # })
2311
+ #
2069
2312
  # @example Request syntax with placeholder values
2070
2313
  #
2071
2314
  # resp = client.delete_function_event_invoke_config({
@@ -2138,6 +2381,16 @@ module Aws::Lambda
2138
2381
  #
2139
2382
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2140
2383
  #
2384
+ #
2385
+ # @example Example: To delete a version of a Lambda layer
2386
+ #
2387
+ # # The following example deletes version 2 of a layer named my-layer.
2388
+ #
2389
+ # resp = client.delete_layer_version({
2390
+ # layer_name: "my-layer",
2391
+ # version_number: 2,
2392
+ # })
2393
+ #
2141
2394
  # @example Request syntax with placeholder values
2142
2395
  #
2143
2396
  # resp = client.delete_layer_version({
@@ -2176,6 +2429,17 @@ module Aws::Lambda
2176
2429
  #
2177
2430
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2178
2431
  #
2432
+ #
2433
+ # @example Example: To delete a provisioned concurrency configuration
2434
+ #
2435
+ # # The following example deletes the provisioned concurrency configuration for the GREEN alias of a function named
2436
+ # # my-function.
2437
+ #
2438
+ # resp = client.delete_provisioned_concurrency_config({
2439
+ # function_name: "my-function",
2440
+ # qualifier: "GREEN",
2441
+ # })
2442
+ #
2179
2443
  # @example Request syntax with placeholder values
2180
2444
  #
2181
2445
  # resp = client.delete_provisioned_concurrency_config({
@@ -2192,6 +2456,13 @@ module Aws::Lambda
2192
2456
  req.send_request(options)
2193
2457
  end
2194
2458
 
2459
+ # <note markdown="1"> The option to create and modify full JSON resource-based policies, and
2460
+ # to use the PutResourcePolicy, GetResourcePolicy, and
2461
+ # DeleteResourcePolicy APIs, won't be available in all Amazon Web
2462
+ # Services Regions until September 30, 2024.
2463
+ #
2464
+ # </note>
2465
+ #
2195
2466
  # Deletes a [resource-based policy][1] from a function.
2196
2467
  #
2197
2468
  #
@@ -2239,6 +2510,29 @@ module Aws::Lambda
2239
2510
  # * {Types::GetAccountSettingsResponse#account_limit #account_limit} => Types::AccountLimit
2240
2511
  # * {Types::GetAccountSettingsResponse#account_usage #account_usage} => Types::AccountUsage
2241
2512
  #
2513
+ #
2514
+ # @example Example: To get account settings
2515
+ #
2516
+ # # This operation takes no parameters and returns details about storage and concurrency quotas in the current Region.
2517
+ #
2518
+ # resp = client.get_account_settings({
2519
+ # })
2520
+ #
2521
+ # resp.to_h outputs the following:
2522
+ # {
2523
+ # account_limit: {
2524
+ # code_size_unzipped: 262144000,
2525
+ # code_size_zipped: 52428800,
2526
+ # concurrent_executions: 1000,
2527
+ # total_code_size: 80530636800,
2528
+ # unreserved_concurrent_executions: 1000,
2529
+ # },
2530
+ # account_usage: {
2531
+ # function_count: 4,
2532
+ # total_code_size: 9426,
2533
+ # },
2534
+ # }
2535
+ #
2242
2536
  # @example Response structure
2243
2537
  #
2244
2538
  # resp.account_limit.total_code_size #=> Integer
@@ -2291,6 +2585,25 @@ module Aws::Lambda
2291
2585
  # * {Types::AliasConfiguration#routing_config #routing_config} => Types::AliasRoutingConfiguration
2292
2586
  # * {Types::AliasConfiguration#revision_id #revision_id} => String
2293
2587
  #
2588
+ #
2589
+ # @example Example: To get a Lambda function alias
2590
+ #
2591
+ # # The following example returns details about an alias named BLUE for a function named my-function
2592
+ #
2593
+ # resp = client.get_alias({
2594
+ # function_name: "my-function",
2595
+ # name: "BLUE",
2596
+ # })
2597
+ #
2598
+ # resp.to_h outputs the following:
2599
+ # {
2600
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:BLUE",
2601
+ # description: "Production environment BLUE.",
2602
+ # function_version: "3",
2603
+ # name: "BLUE",
2604
+ # revision_id: "594f41fb-xmpl-4c20-95c7-6ca5f2a92c93",
2605
+ # }
2606
+ #
2294
2607
  # @example Request syntax with placeholder values
2295
2608
  #
2296
2609
  # resp = client.get_alias({
@@ -2388,6 +2701,34 @@ module Aws::Lambda
2388
2701
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
2389
2702
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
2390
2703
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
2704
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
2705
+ #
2706
+ #
2707
+ # @example Example: To get a Lambda function's event source mapping
2708
+ #
2709
+ # # The following example returns details about an event source mapping. To get a mapping's UUID, use
2710
+ # # ListEventSourceMappings.
2711
+ #
2712
+ # resp = client.get_event_source_mapping({
2713
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2714
+ # })
2715
+ #
2716
+ # resp.to_h outputs the following:
2717
+ # {
2718
+ # batch_size: 500,
2719
+ # bisect_batch_on_function_error: false,
2720
+ # destination_config: {
2721
+ # },
2722
+ # event_source_arn: "arn:aws:sqs:us-east-2:123456789012:mySQSqueue",
2723
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:myFunction",
2724
+ # last_modified: Time.parse("${timestamp}"),
2725
+ # last_processing_result: "No records processed",
2726
+ # maximum_record_age_in_seconds: 604800,
2727
+ # maximum_retry_attempts: 10000,
2728
+ # state: "Creating",
2729
+ # state_transition_reason: "User action",
2730
+ # uuid: "14e0db71-xmpl-4eb5-b481-8945cf9d10c2",
2731
+ # }
2391
2732
  #
2392
2733
  # @example Request syntax with placeholder values
2393
2734
  #
@@ -2438,6 +2779,7 @@ module Aws::Lambda
2438
2779
  # resp.kms_key_arn #=> String
2439
2780
  # resp.filter_criteria_error.error_code #=> String
2440
2781
  # resp.filter_criteria_error.message #=> String
2782
+ # resp.event_source_mapping_arn #=> String
2441
2783
  #
2442
2784
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping AWS API Documentation
2443
2785
  #
@@ -2481,6 +2823,54 @@ module Aws::Lambda
2481
2823
  # * {Types::GetFunctionResponse#tags #tags} => Hash&lt;String,String&gt;
2482
2824
  # * {Types::GetFunctionResponse#concurrency #concurrency} => Types::Concurrency
2483
2825
  #
2826
+ #
2827
+ # @example Example: To get a Lambda function
2828
+ #
2829
+ # # The following example returns code and configuration details for version 1 of a function named my-function.
2830
+ #
2831
+ # resp = client.get_function({
2832
+ # function_name: "my-function",
2833
+ # qualifier: "1",
2834
+ # })
2835
+ #
2836
+ # resp.to_h outputs the following:
2837
+ # {
2838
+ # code: {
2839
+ # location: "https://awslambda-us-west-2-tasks.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-function-e7d9d1ed-xmpl-4f79-904a-4b87f2681f30?versionId=sH3TQwBOaUy...",
2840
+ # repository_type: "S3",
2841
+ # },
2842
+ # configuration: {
2843
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
2844
+ # code_size: 5797206,
2845
+ # description: "Process image objects from Amazon S3.",
2846
+ # environment: {
2847
+ # variables: {
2848
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
2849
+ # "PREFIX" => "inbound",
2850
+ # },
2851
+ # },
2852
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
2853
+ # function_name: "my-function",
2854
+ # handler: "index.handler",
2855
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
2856
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
2857
+ # last_update_status: "Successful",
2858
+ # memory_size: 256,
2859
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
2860
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
2861
+ # runtime: "nodejs12.x",
2862
+ # state: "Active",
2863
+ # timeout: 15,
2864
+ # tracing_config: {
2865
+ # mode: "Active",
2866
+ # },
2867
+ # version: "$LATEST",
2868
+ # },
2869
+ # tags: {
2870
+ # "DEPARTMENT" => "Assets",
2871
+ # },
2872
+ # }
2873
+ #
2484
2874
  # @example Request syntax with placeholder values
2485
2875
  #
2486
2876
  # resp = client.get_function({
@@ -2642,6 +3032,20 @@ module Aws::Lambda
2642
3032
  #
2643
3033
  # * {Types::GetFunctionConcurrencyResponse#reserved_concurrent_executions #reserved_concurrent_executions} => Integer
2644
3034
  #
3035
+ #
3036
+ # @example Example: To get the reserved concurrency setting for a function
3037
+ #
3038
+ # # The following example returns the reserved concurrency setting for a function named my-function.
3039
+ #
3040
+ # resp = client.get_function_concurrency({
3041
+ # function_name: "my-function",
3042
+ # })
3043
+ #
3044
+ # resp.to_h outputs the following:
3045
+ # {
3046
+ # reserved_concurrent_executions: 250,
3047
+ # }
3048
+ #
2645
3049
  # @example Request syntax with placeholder values
2646
3050
  #
2647
3051
  # resp = client.get_function_concurrency({
@@ -2728,6 +3132,45 @@ module Aws::Lambda
2728
3132
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
2729
3133
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
2730
3134
  #
3135
+ #
3136
+ # @example Example: To get a Lambda function's event source mapping
3137
+ #
3138
+ # # The following example returns and configuration details for version 1 of a function named my-function.
3139
+ #
3140
+ # resp = client.get_function_configuration({
3141
+ # function_name: "my-function",
3142
+ # qualifier: "1",
3143
+ # })
3144
+ #
3145
+ # resp.to_h outputs the following:
3146
+ # {
3147
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
3148
+ # code_size: 5797206,
3149
+ # description: "Process image objects from Amazon S3.",
3150
+ # environment: {
3151
+ # variables: {
3152
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
3153
+ # "PREFIX" => "inbound",
3154
+ # },
3155
+ # },
3156
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
3157
+ # function_name: "my-function",
3158
+ # handler: "index.handler",
3159
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
3160
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
3161
+ # last_update_status: "Successful",
3162
+ # memory_size: 256,
3163
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
3164
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
3165
+ # runtime: "nodejs12.x",
3166
+ # state: "Active",
3167
+ # timeout: 15,
3168
+ # tracing_config: {
3169
+ # mode: "Active",
3170
+ # },
3171
+ # version: "$LATEST",
3172
+ # }
3173
+ #
2731
3174
  # @example Request syntax with placeholder values
2732
3175
  #
2733
3176
  # resp = client.get_function_configuration({
@@ -2851,6 +3294,32 @@ module Aws::Lambda
2851
3294
  # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
2852
3295
  # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
2853
3296
  #
3297
+ #
3298
+ # @example Example: To get an asynchronous invocation configuration
3299
+ #
3300
+ # # The following example returns the asynchronous invocation configuration for the BLUE alias of a function named
3301
+ # # my-function.
3302
+ #
3303
+ # resp = client.get_function_event_invoke_config({
3304
+ # function_name: "my-function",
3305
+ # qualifier: "BLUE",
3306
+ # })
3307
+ #
3308
+ # resp.to_h outputs the following:
3309
+ # {
3310
+ # destination_config: {
3311
+ # on_failure: {
3312
+ # destination: "arn:aws:sqs:us-east-2:123456789012:failed-invocations",
3313
+ # },
3314
+ # on_success: {
3315
+ # },
3316
+ # },
3317
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE",
3318
+ # last_modified: Time.parse("${timestamp}"),
3319
+ # maximum_event_age_in_seconds: 3600,
3320
+ # maximum_retry_attempts: 0,
3321
+ # }
3322
+ #
2854
3323
  # @example Request syntax with placeholder values
2855
3324
  #
2856
3325
  # resp = client.get_function_event_invoke_config({
@@ -2997,6 +3466,35 @@ module Aws::Lambda
2997
3466
  # * {Types::GetLayerVersionResponse#license_info #license_info} => String
2998
3467
  # * {Types::GetLayerVersionResponse#compatible_architectures #compatible_architectures} => Array&lt;String&gt;
2999
3468
  #
3469
+ #
3470
+ # @example Example: To get information about a Lambda layer version
3471
+ #
3472
+ # # The following example returns information for version 1 of a layer named my-layer.
3473
+ #
3474
+ # resp = client.get_layer_version({
3475
+ # layer_name: "my-layer",
3476
+ # version_number: 1,
3477
+ # })
3478
+ #
3479
+ # resp.to_h outputs the following:
3480
+ # {
3481
+ # compatible_runtimes: [
3482
+ # "python3.6",
3483
+ # "python3.7",
3484
+ # ],
3485
+ # content: {
3486
+ # code_sha_256: "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=",
3487
+ # code_size: 169,
3488
+ # location: "https://awslambda-us-east-2-layers.s3.us-east-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...",
3489
+ # },
3490
+ # created_date: Time.parse("2018-11-14T23:03:52.894+0000"),
3491
+ # description: "My Python layer",
3492
+ # layer_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer",
3493
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1",
3494
+ # license_info: "MIT",
3495
+ # version: 1,
3496
+ # }
3497
+ #
3000
3498
  # @example Request syntax with placeholder values
3001
3499
  #
3002
3500
  # resp = client.get_layer_version({
@@ -3053,6 +3551,32 @@ module Aws::Lambda
3053
3551
  # * {Types::GetLayerVersionResponse#license_info #license_info} => String
3054
3552
  # * {Types::GetLayerVersionResponse#compatible_architectures #compatible_architectures} => Array&lt;String&gt;
3055
3553
  #
3554
+ #
3555
+ # @example Example: To get information about a Lambda layer version
3556
+ #
3557
+ # # The following example returns information about the layer version with the specified Amazon Resource Name (ARN).
3558
+ #
3559
+ # resp = client.get_layer_version_by_arn({
3560
+ # arn: "arn:aws:lambda:ca-central-1:123456789012:layer:blank-python-lib:3",
3561
+ # })
3562
+ #
3563
+ # resp.to_h outputs the following:
3564
+ # {
3565
+ # compatible_runtimes: [
3566
+ # "python3.8",
3567
+ # ],
3568
+ # content: {
3569
+ # code_sha_256: "6x+xmpl/M3BnQUk7gS9sGmfeFsR/npojXoA3fZUv4eU=",
3570
+ # code_size: 9529009,
3571
+ # 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...",
3572
+ # },
3573
+ # created_date: Time.parse("2020-03-31T00:35:18.949+0000"),
3574
+ # description: "Dependencies for the blank-python sample app.",
3575
+ # layer_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-python-lib",
3576
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-python-lib:3",
3577
+ # version: 3,
3578
+ # }
3579
+ #
3056
3580
  # @example Request syntax with placeholder values
3057
3581
  #
3058
3582
  # resp = client.get_layer_version_by_arn({
@@ -3157,6 +3681,22 @@ module Aws::Lambda
3157
3681
  # * {Types::GetPolicyResponse#policy #policy} => String
3158
3682
  # * {Types::GetPolicyResponse#revision_id #revision_id} => String
3159
3683
  #
3684
+ #
3685
+ # @example Example: To retrieve a Lambda function policy
3686
+ #
3687
+ # # The following example returns the resource-based policy for version 1 of a Lambda function named my-function.
3688
+ #
3689
+ # resp = client.get_policy({
3690
+ # function_name: "my-function",
3691
+ # qualifier: "1",
3692
+ # })
3693
+ #
3694
+ # resp.to_h outputs the following:
3695
+ # {
3696
+ # 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\"}]}",
3697
+ # revision_id: "4843f2f6-7c59-4fda-b484-afd0bc0e22b8",
3698
+ # }
3699
+ #
3160
3700
  # @example Request syntax with placeholder values
3161
3701
  #
3162
3702
  # resp = client.get_policy({
@@ -3208,6 +3748,45 @@ module Aws::Lambda
3208
3748
  # * {Types::GetProvisionedConcurrencyConfigResponse#status_reason #status_reason} => String
3209
3749
  # * {Types::GetProvisionedConcurrencyConfigResponse#last_modified #last_modified} => Time
3210
3750
  #
3751
+ #
3752
+ # @example Example: To view a provisioned concurrency configuration
3753
+ #
3754
+ # # The following example displays details for the provisioned concurrency configuration for the BLUE alias of the specified
3755
+ # # function.
3756
+ #
3757
+ # resp = client.get_provisioned_concurrency_config({
3758
+ # function_name: "my-function",
3759
+ # qualifier: "BLUE",
3760
+ # })
3761
+ #
3762
+ # resp.to_h outputs the following:
3763
+ # {
3764
+ # allocated_provisioned_concurrent_executions: 100,
3765
+ # available_provisioned_concurrent_executions: 100,
3766
+ # last_modified: Time.parse("2019-12-31T20:28:49+0000"),
3767
+ # requested_provisioned_concurrent_executions: 100,
3768
+ # status: "READY",
3769
+ # }
3770
+ #
3771
+ # @example Example: To get a provisioned concurrency configuration
3772
+ #
3773
+ # # The following example returns details for the provisioned concurrency configuration for the BLUE alias of the specified
3774
+ # # function.
3775
+ #
3776
+ # resp = client.get_provisioned_concurrency_config({
3777
+ # function_name: "my-function",
3778
+ # qualifier: "BLUE",
3779
+ # })
3780
+ #
3781
+ # resp.to_h outputs the following:
3782
+ # {
3783
+ # allocated_provisioned_concurrent_executions: 100,
3784
+ # available_provisioned_concurrent_executions: 100,
3785
+ # last_modified: Time.parse("2019-12-31T20:28:49+0000"),
3786
+ # requested_provisioned_concurrent_executions: 100,
3787
+ # status: "READY",
3788
+ # }
3789
+ #
3211
3790
  # @example Request syntax with placeholder values
3212
3791
  #
3213
3792
  # resp = client.get_provisioned_concurrency_config({
@@ -3233,6 +3812,12 @@ module Aws::Lambda
3233
3812
  req.send_request(options)
3234
3813
  end
3235
3814
 
3815
+ # <note markdown="1"> The option to configure public-access settings, and to use the
3816
+ # PutPublicAccessBlock and GetPublicAccessBlock APIs, won't be
3817
+ # available in all Amazon Web Services Regions until September 30, 2024.
3818
+ #
3819
+ # </note>
3820
+ #
3236
3821
  # Retrieve the public-access settings for a function.
3237
3822
  #
3238
3823
  # @option params [required, String] :resource_arn
@@ -3263,6 +3848,13 @@ module Aws::Lambda
3263
3848
  req.send_request(options)
3264
3849
  end
3265
3850
 
3851
+ # <note markdown="1"> The option to create and modify full JSON resource-based policies, and
3852
+ # to use the PutResourcePolicy, GetResourcePolicy, and
3853
+ # DeleteResourcePolicy APIs, won't be available in all Amazon Web
3854
+ # Services Regions until September 30, 2024.
3855
+ #
3856
+ # </note>
3857
+ #
3266
3858
  # Retrieves the [resource-based policy][1] attached to a function.
3267
3859
  #
3268
3860
  #
@@ -3476,6 +4068,40 @@ module Aws::Lambda
3476
4068
  # * {Types::InvocationResponse#payload #payload} => String
3477
4069
  # * {Types::InvocationResponse#executed_version #executed_version} => String
3478
4070
  #
4071
+ #
4072
+ # @example Example: To invoke a Lambda function
4073
+ #
4074
+ # # The following example invokes version 1 of a function named my-function with an empty event payload.
4075
+ #
4076
+ # resp = client.invoke({
4077
+ # function_name: "my-function",
4078
+ # payload: "{}",
4079
+ # qualifier: "1",
4080
+ # })
4081
+ #
4082
+ # resp.to_h outputs the following:
4083
+ # {
4084
+ # payload: "200 SUCCESS",
4085
+ # status_code: 200,
4086
+ # }
4087
+ #
4088
+ # @example Example: To invoke a Lambda function asynchronously
4089
+ #
4090
+ # # The following example invokes version 1 of a function named my-function asynchronously.
4091
+ #
4092
+ # resp = client.invoke({
4093
+ # function_name: "my-function",
4094
+ # invocation_type: "Event",
4095
+ # payload: "{}",
4096
+ # qualifier: "1",
4097
+ # })
4098
+ #
4099
+ # resp.to_h outputs the following:
4100
+ # {
4101
+ # payload: "",
4102
+ # status_code: 202,
4103
+ # }
4104
+ #
3479
4105
  # @example Request syntax with placeholder values
3480
4106
  #
3481
4107
  # resp = client.invoke({
@@ -3536,6 +4162,21 @@ module Aws::Lambda
3536
4162
  #
3537
4163
  # * {Types::InvokeAsyncResponse#status #status} => Integer
3538
4164
  #
4165
+ #
4166
+ # @example Example: To invoke a Lambda function asynchronously
4167
+ #
4168
+ # # The following example invokes a Lambda function asynchronously
4169
+ #
4170
+ # resp = client.invoke_async({
4171
+ # function_name: "my-function",
4172
+ # invoke_args: "{}",
4173
+ # })
4174
+ #
4175
+ # resp.to_h outputs the following:
4176
+ # {
4177
+ # status: 202,
4178
+ # }
4179
+ #
3539
4180
  # @example Request syntax with placeholder values
3540
4181
  #
3541
4182
  # resp = client.invoke_async({
@@ -3808,6 +4449,40 @@ module Aws::Lambda
3808
4449
  #
3809
4450
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3810
4451
  #
4452
+ #
4453
+ # @example Example: To list a function's aliases
4454
+ #
4455
+ # # The following example returns a list of aliases for a function named my-function.
4456
+ #
4457
+ # resp = client.list_aliases({
4458
+ # function_name: "my-function",
4459
+ # })
4460
+ #
4461
+ # resp.to_h outputs the following:
4462
+ # {
4463
+ # aliases: [
4464
+ # {
4465
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:BETA",
4466
+ # description: "Production environment BLUE.",
4467
+ # function_version: "2",
4468
+ # name: "BLUE",
4469
+ # revision_id: "a410117f-xmpl-494e-8035-7e204bb7933b",
4470
+ # routing_config: {
4471
+ # additional_version_weights: {
4472
+ # "1" => 0.7,
4473
+ # },
4474
+ # },
4475
+ # },
4476
+ # {
4477
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:LIVE",
4478
+ # description: "Production environment GREEN.",
4479
+ # function_version: "1",
4480
+ # name: "GREEN",
4481
+ # revision_id: "21d40116-xmpl-40ba-9360-3ea284da1bb5",
4482
+ # },
4483
+ # ],
4484
+ # }
4485
+ #
3811
4486
  # @example Request syntax with placeholder values
3812
4487
  #
3813
4488
  # resp = client.list_aliases({
@@ -3946,6 +4621,30 @@ module Aws::Lambda
3946
4621
  #
3947
4622
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3948
4623
  #
4624
+ #
4625
+ # @example Example: To list the event source mappings for a function
4626
+ #
4627
+ # # The following example returns a list of the event source mappings for a function named my-function.
4628
+ #
4629
+ # resp = client.list_event_source_mappings({
4630
+ # function_name: "my-function",
4631
+ # })
4632
+ #
4633
+ # resp.to_h outputs the following:
4634
+ # {
4635
+ # event_source_mappings: [
4636
+ # {
4637
+ # batch_size: 5,
4638
+ # event_source_arn: "arn:aws:sqs:us-west-2:123456789012:mySQSqueue",
4639
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
4640
+ # last_modified: Time.parse(1569284520.333),
4641
+ # state: "Enabled",
4642
+ # state_transition_reason: "USER_INITIATED",
4643
+ # uuid: "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
4644
+ # },
4645
+ # ],
4646
+ # }
4647
+ #
3949
4648
  # @example Request syntax with placeholder values
3950
4649
  #
3951
4650
  # resp = client.list_event_source_mappings({
@@ -4000,6 +4699,7 @@ module Aws::Lambda
4000
4699
  # resp.event_source_mappings[0].kms_key_arn #=> String
4001
4700
  # resp.event_source_mappings[0].filter_criteria_error.error_code #=> String
4002
4701
  # resp.event_source_mappings[0].filter_criteria_error.message #=> String
4702
+ # resp.event_source_mappings[0].event_source_mapping_arn #=> String
4003
4703
  #
4004
4704
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings AWS API Documentation
4005
4705
  #
@@ -4045,6 +4745,33 @@ module Aws::Lambda
4045
4745
  #
4046
4746
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4047
4747
  #
4748
+ #
4749
+ # @example Example: To view a list of asynchronous invocation configurations
4750
+ #
4751
+ # # The following example returns a list of asynchronous invocation configurations for a function named my-function.
4752
+ #
4753
+ # resp = client.list_function_event_invoke_configs({
4754
+ # function_name: "my-function",
4755
+ # })
4756
+ #
4757
+ # resp.to_h outputs the following:
4758
+ # {
4759
+ # function_event_invoke_configs: [
4760
+ # {
4761
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN",
4762
+ # last_modified: Time.parse(1577824406.719),
4763
+ # maximum_event_age_in_seconds: 1800,
4764
+ # maximum_retry_attempts: 2,
4765
+ # },
4766
+ # {
4767
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE",
4768
+ # last_modified: Time.parse(1577824396.653),
4769
+ # maximum_event_age_in_seconds: 3600,
4770
+ # maximum_retry_attempts: 0,
4771
+ # },
4772
+ # ],
4773
+ # }
4774
+ #
4048
4775
  # @example Request syntax with placeholder values
4049
4776
  #
4050
4777
  # resp = client.list_function_event_invoke_configs({
@@ -4185,6 +4912,64 @@ module Aws::Lambda
4185
4912
  #
4186
4913
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4187
4914
  #
4915
+ #
4916
+ # @example Example: To get a list of Lambda functions
4917
+ #
4918
+ # # This operation returns a list of Lambda functions.
4919
+ #
4920
+ # resp = client.list_functions({
4921
+ # })
4922
+ #
4923
+ # resp.to_h outputs the following:
4924
+ # {
4925
+ # functions: [
4926
+ # {
4927
+ # code_sha_256: "dBG9m8SGdmlEjw/JYXlhhvCrAv5TxvXsbL/RMr0fT/I=",
4928
+ # code_size: 294,
4929
+ # description: "",
4930
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:helloworld",
4931
+ # function_name: "helloworld",
4932
+ # handler: "helloworld.handler",
4933
+ # last_modified: Time.parse("2019-09-23T18:32:33.857+0000"),
4934
+ # memory_size: 128,
4935
+ # revision_id: "1718e831-badf-4253-9518-d0644210af7b",
4936
+ # role: "arn:aws:iam::123456789012:role/service-role/MyTestFunction-role-zgur6bf4",
4937
+ # runtime: "nodejs10.x",
4938
+ # timeout: 3,
4939
+ # tracing_config: {
4940
+ # mode: "PassThrough",
4941
+ # },
4942
+ # version: "$LATEST",
4943
+ # },
4944
+ # {
4945
+ # code_sha_256: "sU0cJ2/hOZevwV/lTxCuQqK3gDZP3i8gUoqUUVRmY6E=",
4946
+ # code_size: 266,
4947
+ # description: "",
4948
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
4949
+ # function_name: "my-function",
4950
+ # handler: "index.handler",
4951
+ # last_modified: Time.parse("2019-10-01T16:47:28.490+0000"),
4952
+ # memory_size: 256,
4953
+ # revision_id: "93017fc9-59cb-41dc-901b-4845ce4bf668",
4954
+ # role: "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq",
4955
+ # runtime: "nodejs10.x",
4956
+ # timeout: 3,
4957
+ # tracing_config: {
4958
+ # mode: "PassThrough",
4959
+ # },
4960
+ # version: "$LATEST",
4961
+ # vpc_config: {
4962
+ # security_group_ids: [
4963
+ # ],
4964
+ # subnet_ids: [
4965
+ # ],
4966
+ # vpc_id: "",
4967
+ # },
4968
+ # },
4969
+ # ],
4970
+ # next_marker: "",
4971
+ # }
4972
+ #
4188
4973
  # @example Request syntax with placeholder values
4189
4974
  #
4190
4975
  # resp = client.list_functions({
@@ -4363,6 +5148,39 @@ module Aws::Lambda
4363
5148
  #
4364
5149
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4365
5150
  #
5151
+ #
5152
+ # @example Example: To list versions of a layer
5153
+ #
5154
+ # # The following example displays information about the versions for the layer named blank-java-lib
5155
+ #
5156
+ # resp = client.list_layer_versions({
5157
+ # layer_name: "blank-java-lib",
5158
+ # })
5159
+ #
5160
+ # resp.to_h outputs the following:
5161
+ # {
5162
+ # layer_versions: [
5163
+ # {
5164
+ # compatible_runtimes: [
5165
+ # "java8",
5166
+ # ],
5167
+ # created_date: Time.parse("2020-03-18T23:38:42.284+0000"),
5168
+ # description: "Dependencies for the blank-java sample app.",
5169
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-java-lib:7",
5170
+ # version: 7,
5171
+ # },
5172
+ # {
5173
+ # compatible_runtimes: [
5174
+ # "java8",
5175
+ # ],
5176
+ # created_date: Time.parse("2020-03-17T07:24:21.960+0000"),
5177
+ # description: "Dependencies for the blank-java sample app.",
5178
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:blank-java-lib:6",
5179
+ # version: 6,
5180
+ # },
5181
+ # ],
5182
+ # }
5183
+ #
4366
5184
  # @example Request syntax with placeholder values
4367
5185
  #
4368
5186
  # resp = client.list_layer_versions({
@@ -4442,6 +5260,35 @@ module Aws::Lambda
4442
5260
  #
4443
5261
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4444
5262
  #
5263
+ #
5264
+ # @example Example: To list the layers that are compatible with your function's runtime
5265
+ #
5266
+ # # The following example returns information about layers that are compatible with the Python 3.7 runtime.
5267
+ #
5268
+ # resp = client.list_layers({
5269
+ # compatible_runtime: "python3.7",
5270
+ # })
5271
+ #
5272
+ # resp.to_h outputs the following:
5273
+ # {
5274
+ # layers: [
5275
+ # {
5276
+ # latest_matching_version: {
5277
+ # compatible_runtimes: [
5278
+ # "python3.6",
5279
+ # "python3.7",
5280
+ # ],
5281
+ # created_date: Time.parse("2018-11-15T00:37:46.592+0000"),
5282
+ # description: "My layer",
5283
+ # layer_version_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2",
5284
+ # version: 2,
5285
+ # },
5286
+ # layer_arn: "arn:aws:lambda:us-east-2:123456789012:layer:my-layer",
5287
+ # layer_name: "my-layer",
5288
+ # },
5289
+ # ],
5290
+ # }
5291
+ #
4445
5292
  # @example Request syntax with placeholder values
4446
5293
  #
4447
5294
  # resp = client.list_layers({
@@ -4508,6 +5355,37 @@ module Aws::Lambda
4508
5355
  #
4509
5356
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4510
5357
  #
5358
+ #
5359
+ # @example Example: To get a list of provisioned concurrency configurations
5360
+ #
5361
+ # # The following example returns a list of provisioned concurrency configurations for a function named my-function.
5362
+ #
5363
+ # resp = client.list_provisioned_concurrency_configs({
5364
+ # function_name: "my-function",
5365
+ # })
5366
+ #
5367
+ # resp.to_h outputs the following:
5368
+ # {
5369
+ # provisioned_concurrency_configs: [
5370
+ # {
5371
+ # allocated_provisioned_concurrent_executions: 100,
5372
+ # available_provisioned_concurrent_executions: 100,
5373
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN",
5374
+ # last_modified: Time.parse("2019-12-31T20:29:00+0000"),
5375
+ # requested_provisioned_concurrent_executions: 100,
5376
+ # status: "READY",
5377
+ # },
5378
+ # {
5379
+ # allocated_provisioned_concurrent_executions: 100,
5380
+ # available_provisioned_concurrent_executions: 100,
5381
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE",
5382
+ # last_modified: Time.parse("2019-12-31T20:28:49+0000"),
5383
+ # requested_provisioned_concurrent_executions: 100,
5384
+ # status: "READY",
5385
+ # },
5386
+ # ],
5387
+ # }
5388
+ #
4511
5389
  # @example Request syntax with placeholder values
4512
5390
  #
4513
5391
  # resp = client.list_provisioned_concurrency_configs({
@@ -4537,7 +5415,8 @@ module Aws::Lambda
4537
5415
  req.send_request(options)
4538
5416
  end
4539
5417
 
4540
- # Returns a function's [tags][1]. You can also view tags with
5418
+ # Returns a function, event source mapping, or code signing
5419
+ # configuration's [tags][1]. You can also view funciton tags with
4541
5420
  # GetFunction.
4542
5421
  #
4543
5422
  #
@@ -4545,17 +5424,34 @@ module Aws::Lambda
4545
5424
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/tagging.html
4546
5425
  #
4547
5426
  # @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.
5427
+ # The resource's Amazon Resource Name (ARN). Note: Lambda does not
5428
+ # support adding tags to function aliases or versions.
4550
5429
  #
4551
5430
  # @return [Types::ListTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4552
5431
  #
4553
5432
  # * {Types::ListTagsResponse#tags #tags} => Hash&lt;String,String&gt;
4554
5433
  #
5434
+ #
5435
+ # @example Example: To retrieve the list of tags for a Lambda function
5436
+ #
5437
+ # # The following example displays the tags attached to the my-function Lambda function.
5438
+ #
5439
+ # resp = client.list_tags({
5440
+ # resource: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5441
+ # })
5442
+ #
5443
+ # resp.to_h outputs the following:
5444
+ # {
5445
+ # tags: {
5446
+ # "Category" => "Web Tools",
5447
+ # "Department" => "Sales",
5448
+ # },
5449
+ # }
5450
+ #
4555
5451
  # @example Request syntax with placeholder values
4556
5452
  #
4557
5453
  # resp = client.list_tags({
4558
- # resource: "FunctionArn", # required
5454
+ # resource: "TaggableResource", # required
4559
5455
  # })
4560
5456
  #
4561
5457
  # @example Response structure
@@ -4610,6 +5506,71 @@ module Aws::Lambda
4610
5506
  #
4611
5507
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4612
5508
  #
5509
+ #
5510
+ # @example Example: To list versions of a function
5511
+ #
5512
+ # # The following example returns a list of versions of a function named my-function
5513
+ #
5514
+ # resp = client.list_versions_by_function({
5515
+ # function_name: "my-function",
5516
+ # })
5517
+ #
5518
+ # resp.to_h outputs the following:
5519
+ # {
5520
+ # versions: [
5521
+ # {
5522
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
5523
+ # code_size: 5797206,
5524
+ # description: "Process image objects from Amazon S3.",
5525
+ # environment: {
5526
+ # variables: {
5527
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
5528
+ # "PREFIX" => "inbound",
5529
+ # },
5530
+ # },
5531
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5532
+ # function_name: "my-function",
5533
+ # handler: "index.handler",
5534
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
5535
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
5536
+ # memory_size: 256,
5537
+ # revision_id: "850ca006-2d98-4ff4-86db-8766e9d32fe9",
5538
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
5539
+ # runtime: "nodejs12.x",
5540
+ # timeout: 15,
5541
+ # tracing_config: {
5542
+ # mode: "Active",
5543
+ # },
5544
+ # version: "$LATEST",
5545
+ # },
5546
+ # {
5547
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
5548
+ # code_size: 5797206,
5549
+ # description: "Process image objects from Amazon S3.",
5550
+ # environment: {
5551
+ # variables: {
5552
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
5553
+ # "PREFIX" => "inbound",
5554
+ # },
5555
+ # },
5556
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5557
+ # function_name: "my-function",
5558
+ # handler: "index.handler",
5559
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
5560
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
5561
+ # memory_size: 256,
5562
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
5563
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
5564
+ # runtime: "nodejs12.x",
5565
+ # timeout: 5,
5566
+ # tracing_config: {
5567
+ # mode: "Active",
5568
+ # },
5569
+ # version: "1",
5570
+ # },
5571
+ # ],
5572
+ # }
5573
+ #
4613
5574
  # @example Request syntax with placeholder values
4614
5575
  #
4615
5576
  # resp = client.list_versions_by_function({
@@ -4760,6 +5721,45 @@ module Aws::Lambda
4760
5721
  # * {Types::PublishLayerVersionResponse#license_info #license_info} => String
4761
5722
  # * {Types::PublishLayerVersionResponse#compatible_architectures #compatible_architectures} => Array&lt;String&gt;
4762
5723
  #
5724
+ #
5725
+ # @example Example: To create a Lambda layer version
5726
+ #
5727
+ # # The following example creates a new Python library layer version. The command retrieves the layer content a file named
5728
+ # # layer.zip in the specified S3 bucket.
5729
+ #
5730
+ # resp = client.publish_layer_version({
5731
+ # compatible_runtimes: [
5732
+ # "python3.6",
5733
+ # "python3.7",
5734
+ # ],
5735
+ # content: {
5736
+ # s3_bucket: "lambda-layers-us-west-2-123456789012",
5737
+ # s3_key: "layer.zip",
5738
+ # },
5739
+ # description: "My Python layer",
5740
+ # layer_name: "my-layer",
5741
+ # license_info: "MIT",
5742
+ # })
5743
+ #
5744
+ # resp.to_h outputs the following:
5745
+ # {
5746
+ # compatible_runtimes: [
5747
+ # "python3.6",
5748
+ # "python3.7",
5749
+ # ],
5750
+ # content: {
5751
+ # code_sha_256: "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=",
5752
+ # code_size: 169,
5753
+ # location: "https://awslambda-us-west-2-layers.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...",
5754
+ # },
5755
+ # created_date: Time.parse("2018-11-14T23:03:52.894+0000"),
5756
+ # description: "My Python layer",
5757
+ # layer_arn: "arn:aws:lambda:us-west-2:123456789012:layer:my-layer",
5758
+ # layer_version_arn: "arn:aws:lambda:us-west-2:123456789012:layer:my-layer:1",
5759
+ # license_info: "MIT",
5760
+ # version: 1,
5761
+ # }
5762
+ #
4763
5763
  # @example Request syntax with placeholder values
4764
5764
  #
4765
5765
  # resp = client.publish_layer_version({
@@ -4889,6 +5889,46 @@ module Aws::Lambda
4889
5889
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
4890
5890
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
4891
5891
  #
5892
+ #
5893
+ # @example Example: To publish a version of a Lambda function
5894
+ #
5895
+ # # This operation publishes a version of a Lambda function
5896
+ #
5897
+ # resp = client.publish_version({
5898
+ # code_sha_256: "",
5899
+ # description: "",
5900
+ # function_name: "myFunction",
5901
+ # })
5902
+ #
5903
+ # resp.to_h outputs the following:
5904
+ # {
5905
+ # code_sha_256: "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=",
5906
+ # code_size: 5797206,
5907
+ # description: "Process image objects from Amazon S3.",
5908
+ # environment: {
5909
+ # variables: {
5910
+ # "BUCKET" => "my-bucket-1xpuxmplzrlbh",
5911
+ # "PREFIX" => "inbound",
5912
+ # },
5913
+ # },
5914
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
5915
+ # function_name: "my-function",
5916
+ # handler: "index.handler",
5917
+ # kms_key_arn: "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966",
5918
+ # last_modified: Time.parse("2020-04-10T19:06:32.563+0000"),
5919
+ # last_update_status: "Successful",
5920
+ # memory_size: 256,
5921
+ # revision_id: "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727",
5922
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
5923
+ # runtime: "nodejs12.x",
5924
+ # state: "Active",
5925
+ # timeout: 5,
5926
+ # tracing_config: {
5927
+ # mode: "Active",
5928
+ # },
5929
+ # version: "1",
5930
+ # }
5931
+ #
4892
5932
  # @example Request syntax with placeholder values
4893
5933
  #
4894
5934
  # resp = client.publish_version({
@@ -5062,6 +6102,21 @@ module Aws::Lambda
5062
6102
  #
5063
6103
  # * {Types::Concurrency#reserved_concurrent_executions #reserved_concurrent_executions} => Integer
5064
6104
  #
6105
+ #
6106
+ # @example Example: To configure a reserved concurrency limit for a function
6107
+ #
6108
+ # # The following example configures 100 reserved concurrent executions for the my-function function.
6109
+ #
6110
+ # resp = client.put_function_concurrency({
6111
+ # function_name: "my-function",
6112
+ # reserved_concurrent_executions: 100,
6113
+ # })
6114
+ #
6115
+ # resp.to_h outputs the following:
6116
+ # {
6117
+ # reserved_concurrent_executions: 100,
6118
+ # }
6119
+ #
5065
6120
  # @example Request syntax with placeholder values
5066
6121
  #
5067
6122
  # resp = client.put_function_concurrency({
@@ -5157,6 +6212,31 @@ module Aws::Lambda
5157
6212
  # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
5158
6213
  # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
5159
6214
  #
6215
+ #
6216
+ # @example Example: To configure error handling for asynchronous invocation
6217
+ #
6218
+ # # The following example sets a maximum event age of one hour and disables retries for the specified function.
6219
+ #
6220
+ # resp = client.put_function_event_invoke_config({
6221
+ # function_name: "my-function",
6222
+ # maximum_event_age_in_seconds: 3600,
6223
+ # maximum_retry_attempts: 0,
6224
+ # })
6225
+ #
6226
+ # resp.to_h outputs the following:
6227
+ # {
6228
+ # destination_config: {
6229
+ # on_failure: {
6230
+ # },
6231
+ # on_success: {
6232
+ # },
6233
+ # },
6234
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST",
6235
+ # last_modified: Time.parse("${timestamp}"),
6236
+ # maximum_event_age_in_seconds: 3600,
6237
+ # maximum_retry_attempts: 0,
6238
+ # }
6239
+ #
5160
6240
  # @example Request syntax with placeholder values
5161
6241
  #
5162
6242
  # resp = client.put_function_event_invoke_config({
@@ -5311,6 +6391,25 @@ module Aws::Lambda
5311
6391
  # * {Types::PutProvisionedConcurrencyConfigResponse#status_reason #status_reason} => String
5312
6392
  # * {Types::PutProvisionedConcurrencyConfigResponse#last_modified #last_modified} => Time
5313
6393
  #
6394
+ #
6395
+ # @example Example: To allocate provisioned concurrency
6396
+ #
6397
+ # # The following example allocates 100 provisioned concurrency for the BLUE alias of the specified function.
6398
+ #
6399
+ # resp = client.put_provisioned_concurrency_config({
6400
+ # function_name: "my-function",
6401
+ # provisioned_concurrent_executions: 100,
6402
+ # qualifier: "BLUE",
6403
+ # })
6404
+ #
6405
+ # resp.to_h outputs the following:
6406
+ # {
6407
+ # allocated_provisioned_concurrent_executions: 0,
6408
+ # last_modified: Time.parse("2019-11-21T19:32:12+0000"),
6409
+ # requested_provisioned_concurrent_executions: 100,
6410
+ # status: "IN_PROGRESS",
6411
+ # }
6412
+ #
5314
6413
  # @example Request syntax with placeholder values
5315
6414
  #
5316
6415
  # resp = client.put_provisioned_concurrency_config({
@@ -5337,6 +6436,12 @@ module Aws::Lambda
5337
6436
  req.send_request(options)
5338
6437
  end
5339
6438
 
6439
+ # <note markdown="1"> The option to configure public-access settings, and to use the
6440
+ # PutPublicAccessBlock and GetPublicAccessBlock APIs, won't be
6441
+ # available in all Amazon Web Services Regions until September 30, 2024.
6442
+ #
6443
+ # </note>
6444
+ #
5340
6445
  # Configure your function's public-access settings.
5341
6446
  #
5342
6447
  # To control public access to a Lambda function, you can choose whether
@@ -5399,6 +6504,13 @@ module Aws::Lambda
5399
6504
  req.send_request(options)
5400
6505
  end
5401
6506
 
6507
+ # <note markdown="1"> The option to create and modify full JSON resource-based policies, and
6508
+ # to use the PutResourcePolicy, GetResourcePolicy, and
6509
+ # DeleteResourcePolicy APIs, won't be available in all Amazon Web
6510
+ # Services Regions until September 30, 2024.
6511
+ #
6512
+ # </note>
6513
+ #
5402
6514
  # Adds a [resource-based policy][1] to a function. You can use
5403
6515
  # resource-based policies to grant access to other [Amazon Web Services
5404
6516
  # accounts][2], [organizations][3], or [services][4]. Resource-based
@@ -5583,6 +6695,17 @@ module Aws::Lambda
5583
6695
  #
5584
6696
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5585
6697
  #
6698
+ #
6699
+ # @example Example: To delete layer-version permissions
6700
+ #
6701
+ # # The following example deletes permission for an account to configure a layer version.
6702
+ #
6703
+ # resp = client.remove_layer_version_permission({
6704
+ # layer_name: "my-layer",
6705
+ # statement_id: "xaccount",
6706
+ # version_number: 1,
6707
+ # })
6708
+ #
5586
6709
  # @example Request syntax with placeholder values
5587
6710
  #
5588
6711
  # resp = client.remove_layer_version_permission({
@@ -5636,6 +6759,18 @@ module Aws::Lambda
5636
6759
  #
5637
6760
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5638
6761
  #
6762
+ #
6763
+ # @example Example: To remove a Lambda function's permissions
6764
+ #
6765
+ # # The following example removes a permissions statement named xaccount from the PROD alias of a function named
6766
+ # # my-function.
6767
+ #
6768
+ # resp = client.remove_permission({
6769
+ # function_name: "my-function",
6770
+ # qualifier: "PROD",
6771
+ # statement_id: "xaccount",
6772
+ # })
6773
+ #
5639
6774
  # @example Request syntax with placeholder values
5640
6775
  #
5641
6776
  # resp = client.remove_permission({
@@ -5654,24 +6789,38 @@ module Aws::Lambda
5654
6789
  req.send_request(options)
5655
6790
  end
5656
6791
 
5657
- # Adds [tags][1] to a function.
6792
+ # Adds [tags][1] to a function, event source mapping, or code signing
6793
+ # configuration.
5658
6794
  #
5659
6795
  #
5660
6796
  #
5661
6797
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/tagging.html
5662
6798
  #
5663
6799
  # @option params [required, String] :resource
5664
- # The function's Amazon Resource Name (ARN).
6800
+ # The resource's Amazon Resource Name (ARN).
5665
6801
  #
5666
6802
  # @option params [required, Hash<String,String>] :tags
5667
- # A list of tags to apply to the function.
6803
+ # A list of tags to apply to the resource.
5668
6804
  #
5669
6805
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5670
6806
  #
6807
+ #
6808
+ # @example Example: To add tags to an existing Lambda function
6809
+ #
6810
+ # # The following example adds a tag with the key name DEPARTMENT and a value of 'Department A' to the specified Lambda
6811
+ # # function.
6812
+ #
6813
+ # resp = client.tag_resource({
6814
+ # resource: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
6815
+ # tags: {
6816
+ # "DEPARTMENT" => "Department A",
6817
+ # },
6818
+ # })
6819
+ #
5671
6820
  # @example Request syntax with placeholder values
5672
6821
  #
5673
6822
  # resp = client.tag_resource({
5674
- # resource: "FunctionArn", # required
6823
+ # resource: "TaggableResource", # required
5675
6824
  # tags: { # required
5676
6825
  # "TagKey" => "TagValue",
5677
6826
  # },
@@ -5686,24 +6835,37 @@ module Aws::Lambda
5686
6835
  req.send_request(options)
5687
6836
  end
5688
6837
 
5689
- # Removes [tags][1] from a function.
6838
+ # Removes [tags][1] from a function, event source mapping, or code
6839
+ # signing configuration.
5690
6840
  #
5691
6841
  #
5692
6842
  #
5693
6843
  # [1]: https://docs.aws.amazon.com/lambda/latest/dg/tagging.html
5694
6844
  #
5695
6845
  # @option params [required, String] :resource
5696
- # The function's Amazon Resource Name (ARN).
6846
+ # The resource's Amazon Resource Name (ARN).
5697
6847
  #
5698
6848
  # @option params [required, Array<String>] :tag_keys
5699
- # A list of tag keys to remove from the function.
6849
+ # A list of tag keys to remove from the resource.
5700
6850
  #
5701
6851
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5702
6852
  #
6853
+ #
6854
+ # @example Example: To remove tags from an existing Lambda function
6855
+ #
6856
+ # # The following example removes the tag with the key name DEPARTMENT tag from the my-function Lambda function.
6857
+ #
6858
+ # resp = client.untag_resource({
6859
+ # resource: "arn:aws:lambda:us-west-2:123456789012:function:my-function",
6860
+ # tag_keys: [
6861
+ # "DEPARTMENT",
6862
+ # ],
6863
+ # })
6864
+ #
5703
6865
  # @example Request syntax with placeholder values
5704
6866
  #
5705
6867
  # resp = client.untag_resource({
5706
- # resource: "FunctionArn", # required
6868
+ # resource: "TaggableResource", # required
5707
6869
  # tag_keys: ["TagKey"], # required
5708
6870
  # })
5709
6871
  #
@@ -5767,6 +6929,36 @@ module Aws::Lambda
5767
6929
  # * {Types::AliasConfiguration#routing_config #routing_config} => Types::AliasRoutingConfiguration
5768
6930
  # * {Types::AliasConfiguration#revision_id #revision_id} => String
5769
6931
  #
6932
+ #
6933
+ # @example Example: To update a function alias
6934
+ #
6935
+ # # The following example updates the alias named BLUE to send 30% of traffic to version 2 and 70% to version 1.
6936
+ #
6937
+ # resp = client.update_alias({
6938
+ # function_name: "my-function",
6939
+ # function_version: "2",
6940
+ # name: "BLUE",
6941
+ # routing_config: {
6942
+ # additional_version_weights: {
6943
+ # "1" => 0.7,
6944
+ # },
6945
+ # },
6946
+ # })
6947
+ #
6948
+ # resp.to_h outputs the following:
6949
+ # {
6950
+ # alias_arn: "arn:aws:lambda:us-west-2:123456789012:function:my-function:BLUE",
6951
+ # description: "Production environment BLUE.",
6952
+ # function_version: "2",
6953
+ # name: "BLUE",
6954
+ # revision_id: "594f41fb-xmpl-4c20-95c7-6ca5f2a92c93",
6955
+ # routing_config: {
6956
+ # additional_version_weights: {
6957
+ # "1" => 0.7,
6958
+ # },
6959
+ # },
6960
+ # }
6961
+ #
5770
6962
  # @example Request syntax with placeholder values
5771
6963
  #
5772
6964
  # resp = client.update_alias({
@@ -6094,6 +7286,31 @@ module Aws::Lambda
6094
7286
  # * {Types::EventSourceMappingConfiguration#document_db_event_source_config #document_db_event_source_config} => Types::DocumentDBEventSourceConfig
6095
7287
  # * {Types::EventSourceMappingConfiguration#kms_key_arn #kms_key_arn} => String
6096
7288
  # * {Types::EventSourceMappingConfiguration#filter_criteria_error #filter_criteria_error} => Types::FilterCriteriaError
7289
+ # * {Types::EventSourceMappingConfiguration#event_source_mapping_arn #event_source_mapping_arn} => String
7290
+ #
7291
+ #
7292
+ # @example Example: To update a Lambda function event source mapping
7293
+ #
7294
+ # # This operation updates a Lambda function event source mapping
7295
+ #
7296
+ # resp = client.update_event_source_mapping({
7297
+ # batch_size: 123,
7298
+ # enabled: true,
7299
+ # function_name: "myFunction",
7300
+ # uuid: "1234xCy789012",
7301
+ # })
7302
+ #
7303
+ # resp.to_h outputs the following:
7304
+ # {
7305
+ # batch_size: 123,
7306
+ # event_source_arn: "arn:aws:s3:::examplebucket/*",
7307
+ # function_arn: "arn:aws:lambda:us-west-2:123456789012:function:myFunction",
7308
+ # last_modified: Time.parse("2016-11-21T19:49:20.006+0000"),
7309
+ # last_processing_result: "",
7310
+ # state: "",
7311
+ # state_transition_reason: "",
7312
+ # uuid: "1234xCy789012",
7313
+ # }
6097
7314
  #
6098
7315
  # @example Request syntax with placeholder values
6099
7316
  #
@@ -6184,6 +7401,7 @@ module Aws::Lambda
6184
7401
  # resp.kms_key_arn #=> String
6185
7402
  # resp.filter_criteria_error.error_code #=> String
6186
7403
  # resp.filter_criteria_error.message #=> String
7404
+ # resp.event_source_mapping_arn #=> String
6187
7405
  #
6188
7406
  # @see http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping AWS API Documentation
6189
7407
  #
@@ -6321,6 +7539,38 @@ module Aws::Lambda
6321
7539
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
6322
7540
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
6323
7541
  #
7542
+ #
7543
+ # @example Example: To update a Lambda function's code
7544
+ #
7545
+ # # The following example replaces the code of the unpublished ($LATEST) version of a function named my-function with the
7546
+ # # contents of the specified zip file in Amazon S3.
7547
+ #
7548
+ # resp = client.update_function_code({
7549
+ # function_name: "my-function",
7550
+ # s3_bucket: "my-bucket-1xpuxmplzrlbh",
7551
+ # s3_key: "function.zip",
7552
+ # })
7553
+ #
7554
+ # resp.to_h outputs the following:
7555
+ # {
7556
+ # code_sha_256: "PFn4S+er27qk+UuZSTKEQfNKG/XNn7QJs90mJgq6oH8=",
7557
+ # code_size: 308,
7558
+ # description: "",
7559
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function",
7560
+ # function_name: "my-function",
7561
+ # handler: "index.handler",
7562
+ # last_modified: Time.parse("2019-08-14T22:26:11.234+0000"),
7563
+ # memory_size: 128,
7564
+ # revision_id: "873282ed-xmpl-4dc8-a069-d0c647e470c6",
7565
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
7566
+ # runtime: "nodejs12.x",
7567
+ # timeout: 3,
7568
+ # tracing_config: {
7569
+ # mode: "PassThrough",
7570
+ # },
7571
+ # version: "$LATEST",
7572
+ # }
7573
+ #
6324
7574
  # @example Request syntax with placeholder values
6325
7575
  #
6326
7576
  # resp = client.update_function_code({
@@ -6636,6 +7886,37 @@ module Aws::Lambda
6636
7886
  # * {Types::FunctionConfiguration#runtime_version_config #runtime_version_config} => Types::RuntimeVersionConfig
6637
7887
  # * {Types::FunctionConfiguration#logging_config #logging_config} => Types::LoggingConfig
6638
7888
  #
7889
+ #
7890
+ # @example Example: To update a Lambda function's configuration
7891
+ #
7892
+ # # The following example modifies the memory size to be 256 MB for the unpublished ($LATEST) version of a function named
7893
+ # # my-function.
7894
+ #
7895
+ # resp = client.update_function_configuration({
7896
+ # function_name: "my-function",
7897
+ # memory_size: 256,
7898
+ # })
7899
+ #
7900
+ # resp.to_h outputs the following:
7901
+ # {
7902
+ # code_sha_256: "PFn4S+er27qk+UuZSTKEQfNKG/XNn7QJs90mJgq6oH8=",
7903
+ # code_size: 308,
7904
+ # description: "",
7905
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function",
7906
+ # function_name: "my-function",
7907
+ # handler: "index.handler",
7908
+ # last_modified: Time.parse("2019-08-14T22:26:11.234+0000"),
7909
+ # memory_size: 256,
7910
+ # revision_id: "873282ed-xmpl-4dc8-a069-d0c647e470c6",
7911
+ # role: "arn:aws:iam::123456789012:role/lambda-role",
7912
+ # runtime: "nodejs12.x",
7913
+ # timeout: 3,
7914
+ # tracing_config: {
7915
+ # mode: "PassThrough",
7916
+ # },
7917
+ # version: "$LATEST",
7918
+ # }
7919
+ #
6639
7920
  # @example Request syntax with placeholder values
6640
7921
  #
6641
7922
  # resp = client.update_function_configuration({
@@ -6821,6 +8102,36 @@ module Aws::Lambda
6821
8102
  # * {Types::FunctionEventInvokeConfig#maximum_event_age_in_seconds #maximum_event_age_in_seconds} => Integer
6822
8103
  # * {Types::FunctionEventInvokeConfig#destination_config #destination_config} => Types::DestinationConfig
6823
8104
  #
8105
+ #
8106
+ # @example Example: To update an asynchronous invocation configuration
8107
+ #
8108
+ # # The following example adds an on-failure destination to the existing asynchronous invocation configuration for a
8109
+ # # function named my-function.
8110
+ #
8111
+ # resp = client.update_function_event_invoke_config({
8112
+ # destination_config: {
8113
+ # on_failure: {
8114
+ # destination: "arn:aws:sqs:us-east-2:123456789012:destination",
8115
+ # },
8116
+ # },
8117
+ # function_name: "my-function",
8118
+ # })
8119
+ #
8120
+ # resp.to_h outputs the following:
8121
+ # {
8122
+ # destination_config: {
8123
+ # on_failure: {
8124
+ # destination: "arn:aws:sqs:us-east-2:123456789012:destination",
8125
+ # },
8126
+ # on_success: {
8127
+ # },
8128
+ # },
8129
+ # function_arn: "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST",
8130
+ # last_modified: Time.parse(1573687896.493),
8131
+ # maximum_event_age_in_seconds: 3600,
8132
+ # maximum_retry_attempts: 0,
8133
+ # }
8134
+ #
6824
8135
  # @example Request syntax with placeholder values
6825
8136
  #
6826
8137
  # resp = client.update_function_event_invoke_config({
@@ -6986,7 +8297,7 @@ module Aws::Lambda
6986
8297
  tracer: tracer
6987
8298
  )
6988
8299
  context[:gem_name] = 'aws-sdk-lambda'
6989
- context[:gem_version] = '1.131.0'
8300
+ context[:gem_version] = '1.133.0'
6990
8301
  Seahorse::Client::Request.new(handlers, context)
6991
8302
  end
6992
8303