aws-sdk-lambda 1.0.0.rc2 → 1.0.0.rc3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 31d5898152bd1b98cc3651c56228b7a997b02e7e
4
- data.tar.gz: a2b747aab815e023bbc24f52176182f469927661
3
+ metadata.gz: dbbcd845f22d9a856c330b966b1efcc7a7f6f2f7
4
+ data.tar.gz: d86622229bbf505862f1496e15908d560265c66b
5
5
  SHA512:
6
- metadata.gz: 80bd5a0e0945a4e66b3829373e5c481c6d92627c27e872b59eea83df564dd38d73880a30eab64d972f0bca4bcd468a56c914f8b36b47a3bf472a1534a4ad9486
7
- data.tar.gz: b915ee4a8ecf6c6deb48f8812842726229ffba041ba06b030916148e19f0cc23453f1b74008638b8cd3122ae897e8a0656d014304975ed0b02d1bc200c8050b7
6
+ metadata.gz: af8401e516960148663cd78294d7c9d91371ec2dbf265af7fa3ce684fddca73138c6dbf7c40c45c28bc727208d31e396bfc14d5435ead0fe19a6d1fc4dee2710
7
+ data.tar.gz: 3748e1200cfbab16c26fbef703acb0d77f090a51d125b49067b3210ddac11e9e925000fb0352bc0a29b69be620a57dc9265eb7e7d575eb65c1ed88076a0095d7
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -23,1977 +23,2179 @@ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
23
23
 
24
24
  Aws::Plugins::GlobalConfiguration.add_identifier(:lambda)
25
25
 
26
- module Aws
27
- module Lambda
28
- class Client < Seahorse::Client::Base
26
+ module Aws::Lambda
27
+ class Client < Seahorse::Client::Base
29
28
 
30
- include Aws::ClientStubs
29
+ include Aws::ClientStubs
31
30
 
32
- @identifier = :lambda
31
+ @identifier = :lambda
33
32
 
34
- set_api(ClientApi::API)
33
+ set_api(ClientApi::API)
35
34
 
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::RestJson)
35
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
36
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
37
+ add_plugin(Aws::Plugins::Logging)
38
+ add_plugin(Aws::Plugins::ParamConverter)
39
+ add_plugin(Aws::Plugins::ParamValidator)
40
+ add_plugin(Aws::Plugins::UserAgent)
41
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
42
+ add_plugin(Aws::Plugins::RetryErrors)
43
+ add_plugin(Aws::Plugins::GlobalConfiguration)
44
+ add_plugin(Aws::Plugins::RegionalEndpoint)
45
+ add_plugin(Aws::Plugins::ResponsePaging)
46
+ add_plugin(Aws::Plugins::StubResponses)
47
+ add_plugin(Aws::Plugins::IdempotencyToken)
48
+ add_plugin(Aws::Plugins::SignatureV4)
49
+ add_plugin(Aws::Plugins::Protocols::RestJson)
51
50
 
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :stub_responses (false)
117
- # Causes the client to return stubbed responses. By default
118
- # fake responses are generated and returned. You can specify
119
- # the response data to return or errors to raise by calling
120
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
121
- #
122
- # ** Please note ** When response stubbing is enabled, no HTTP
123
- # requests are made, and retries are disabled.
124
- # @option options [Boolean] :validate_params (true)
125
- # When `true`, request parameters are validated before
126
- # sending the request.
127
- def initialize(*args)
128
- super
129
- end
130
-
131
- # @!group API Operations
51
+ # @option options [required, Aws::CredentialProvider] :credentials
52
+ # Your AWS credentials. This can be an instance of any one of the
53
+ # following classes:
54
+ #
55
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
56
+ # credentials.
57
+ #
58
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
59
+ # from an EC2 IMDS on an EC2 instance.
60
+ #
61
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
62
+ # shared file, such as `~/.aws/config`.
63
+ #
64
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
65
+ #
66
+ # When `:credentials` are not configured directly, the following
67
+ # locations will be searched for credentials:
68
+ #
69
+ # * `Aws.config[:credentials]`
70
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
71
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
72
+ # * `~/.aws/credentials`
73
+ # * `~/.aws/config`
74
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
75
+ # very aggressive. Construct and pass an instance of
76
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
77
+ # timeouts.
78
+ #
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ #
91
+ # @option options [String] :access_key_id
92
+ #
93
+ # @option options [Boolean] :convert_params (true)
94
+ # When `true`, an attempt is made to coerce request parameters into
95
+ # the required types.
96
+ #
97
+ # @option options [String] :endpoint
98
+ # The client endpoint is normally constructed from the `:region`
99
+ # option. You should only configure an `:endpoint` when connecting
100
+ # to test endpoints. This should be avalid HTTP(S) URI.
101
+ #
102
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
103
+ # The log formatter.
104
+ #
105
+ # @option options [Symbol] :log_level (:info)
106
+ # The log level to send messages to the `:logger` at.
107
+ #
108
+ # @option options [Logger] :logger
109
+ # The Logger instance to send log messages to. If this option
110
+ # is not set, logging will be disabled.
111
+ #
112
+ # @option options [String] :profile ("default")
113
+ # Used when loading credentials from the shared credentials file
114
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
115
+ #
116
+ # @option options [Integer] :retry_limit (3)
117
+ # The maximum number of times to retry failed requests. Only
118
+ # ~ 500 level server errors and certain ~ 400 level client errors
119
+ # are retried. Generally, these are throttling errors, data
120
+ # checksum errors, networking errors, timeout errors and auth
121
+ # errors from expired credentials.
122
+ #
123
+ # @option options [String] :secret_access_key
124
+ #
125
+ # @option options [String] :session_token
126
+ #
127
+ # @option options [Boolean] :stub_responses (false)
128
+ # Causes the client to return stubbed responses. By default
129
+ # fake responses are generated and returned. You can specify
130
+ # the response data to return or errors to raise by calling
131
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
132
+ #
133
+ # ** Please note ** When response stubbing is enabled, no HTTP
134
+ # requests are made, and retries are disabled.
135
+ #
136
+ # @option options [Boolean] :validate_params (true)
137
+ # When `true`, request parameters are validated before
138
+ # sending the request.
139
+ #
140
+ def initialize(*args)
141
+ super
142
+ end
132
143
 
133
- # Adds a permission to the resource policy associated with the specified
134
- # AWS Lambda function. You use resource policies to grant permissions to
135
- # event sources that use *push* model. In a *push* model, event sources
136
- # (such as Amazon S3 and custom applications) invoke your Lambda
137
- # function. Each permission you add to the resource policy allows an
138
- # event source, permission to invoke the Lambda function.
139
- #
140
- # For information about the push model, see [AWS Lambda: How it
141
- # Works][1].
142
- #
143
- # If you are using versioning, the permissions you add are specific to
144
- # the Lambda function version or alias you specify in the
145
- # `AddPermission` request via the `Qualifier` parameter. For more
146
- # information about versioning, see [AWS Lambda Function Versioning and
147
- # Aliases][2].
148
- #
149
- # This operation requires permission for the `lambda:AddPermission`
150
- # action.
151
- #
152
- #
153
- #
154
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
155
- # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
156
- # @option params [required, String] :function_name
157
- # Name of the Lambda function whose resource policy you are updating by
158
- # adding a new permission.
159
- #
160
- # You can specify a function name (for example, `Thumbnail`) or you can
161
- # specify Amazon Resource Name (ARN) of the function (for example,
162
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
163
- # also allows you to specify partial ARN (for example,
164
- # `account-id:Thumbnail`). Note that the length constraint applies only
165
- # to the ARN. If you specify only the function name, it is limited to 64
166
- # character in length.
167
- # @option params [required, String] :statement_id
168
- # A unique statement identifier.
169
- # @option params [required, String] :action
170
- # The AWS Lambda action you want to allow in this statement. Each Lambda
171
- # action is a string starting with `lambda:` followed by the API name .
172
- # For example, `lambda:CreateFunction`. You can use wildcard
173
- # (`lambda:*`) to grant permission for all AWS Lambda actions.
174
- # @option params [required, String] :principal
175
- # The principal who is getting this permission. It can be Amazon S3
176
- # service Principal (`s3.amazonaws.com`) if you want Amazon S3 to invoke
177
- # the function, an AWS account ID if you are granting cross-account
178
- # permission, or any valid AWS service principal such as
179
- # `sns.amazonaws.com`. For example, you might want to allow a custom
180
- # application in another AWS account to push events to AWS Lambda by
181
- # invoking your function.
182
- # @option params [String] :source_arn
183
- # This is optional; however, when granting Amazon S3 permission to
184
- # invoke your function, you should specify this field with the Amazon
185
- # Resource Name (ARN) as its value. This ensures that only events
186
- # generated from the specified source can invoke the function.
187
- #
188
- # If you add a permission for the Amazon S3 principal without providing
189
- # the source ARN, any AWS account that creates a mapping to your
190
- # function ARN can send events to invoke your Lambda function from
191
- # Amazon S3.
192
- # @option params [String] :source_account
193
- # This parameter is used for S3, SES, CloudWatch Logs and CloudWatch
194
- # Rules only. The AWS account ID (without a hyphen) of the source owner.
195
- # For example, if the `SourceArn` identifies a bucket, then this is the
196
- # bucket owner's account ID. You can use this additional condition to
197
- # ensure the bucket you specify is owned by a specific account (it is
198
- # possible the bucket owner deleted the bucket and some other AWS
199
- # account created the bucket). You can also use this condition to
200
- # specify all sources (that is, you don't specify the `SourceArn`)
201
- # owned by a specific account.
202
- # @option params [String] :event_source_token
203
- # A unique token that must be supplied by the principal invoking the
204
- # function. This is currently only used for Alexa Smart Home functions.
205
- # @option params [String] :qualifier
206
- # You can use this optional query parameter to describe a qualified ARN
207
- # using a function version or an alias name. The permission will then
208
- # apply to the specific qualified ARN. For example, if you specify
209
- # function version 2 as the qualifier, then permission applies only when
210
- # request is made using qualified function ARN:
211
- #
212
- # `arn:aws:lambda:aws-region:acct-id:function:function-name:2`
213
- #
214
- # If you specify an alias name, for example `PROD`, then the permission
215
- # is valid only for requests made using the alias ARN:
216
- #
217
- # `arn:aws:lambda:aws-region:acct-id:function:function-name:PROD`
218
- #
219
- # If the qualifier is not specified, the permission is valid only when
220
- # requests is made using unqualified function ARN.
221
- #
222
- # `arn:aws:lambda:aws-region:acct-id:function:function-name`
223
- # @return [Types::AddPermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
224
- #
225
- # * {Types::AddPermissionResponse#statement #Statement} => String
226
- #
227
- # @example Request syntax with placeholder values
228
- # resp = client.add_permission({
229
- # function_name: "FunctionName", # required
230
- # statement_id: "StatementId", # required
231
- # action: "Action", # required
232
- # principal: "Principal", # required
233
- # source_arn: "Arn",
234
- # source_account: "SourceOwner",
235
- # event_source_token: "EventSourceToken",
236
- # qualifier: "Qualifier",
237
- # })
238
- #
239
- # @example Response structure
240
- # resp.statement #=> String
241
- # @overload add_permission(params = {})
242
- # @param [Hash] params ({})
243
- def add_permission(params = {}, options = {})
244
- req = build_request(:add_permission, params)
245
- req.send_request(options)
246
- end
144
+ # @!group API Operations
247
145
 
248
- # Creates an alias that points to the specified Lambda function version.
249
- # For more information, see [Introduction to AWS Lambda Aliases][1].
250
- #
251
- # Alias names are unique for a given function. This requires permission
252
- # for the lambda:CreateAlias action.
253
- #
254
- #
255
- #
256
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
257
- # @option params [required, String] :function_name
258
- # Name of the Lambda function for which you want to create an alias.
259
- # @option params [required, String] :name
260
- # Name for the alias you are creating.
261
- # @option params [required, String] :function_version
262
- # Lambda function version for which you are creating the alias.
263
- # @option params [String] :description
264
- # Description of the alias.
265
- # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
266
- #
267
- # * {Types::AliasConfiguration#alias_arn #AliasArn} => String
268
- # * {Types::AliasConfiguration#name #Name} => String
269
- # * {Types::AliasConfiguration#function_version #FunctionVersion} => String
270
- # * {Types::AliasConfiguration#description #Description} => String
271
- #
272
- # @example Request syntax with placeholder values
273
- # resp = client.create_alias({
274
- # function_name: "FunctionName", # required
275
- # name: "Alias", # required
276
- # function_version: "Version", # required
277
- # description: "Description",
278
- # })
279
- #
280
- # @example Response structure
281
- # resp.alias_arn #=> String
282
- # resp.name #=> String
283
- # resp.function_version #=> String
284
- # resp.description #=> String
285
- # @overload create_alias(params = {})
286
- # @param [Hash] params ({})
287
- def create_alias(params = {}, options = {})
288
- req = build_request(:create_alias, params)
289
- req.send_request(options)
290
- end
146
+ # Adds a permission to the resource policy associated with the specified
147
+ # AWS Lambda function. You use resource policies to grant permissions to
148
+ # event sources that use *push* model. In a *push* model, event sources
149
+ # (such as Amazon S3 and custom applications) invoke your Lambda
150
+ # function. Each permission you add to the resource policy allows an
151
+ # event source, permission to invoke the Lambda function.
152
+ #
153
+ # For information about the push model, see [AWS Lambda: How it
154
+ # Works][1].
155
+ #
156
+ # If you are using versioning, the permissions you add are specific to
157
+ # the Lambda function version or alias you specify in the
158
+ # `AddPermission` request via the `Qualifier` parameter. For more
159
+ # information about versioning, see [AWS Lambda Function Versioning and
160
+ # Aliases][2].
161
+ #
162
+ # This operation requires permission for the `lambda:AddPermission`
163
+ # action.
164
+ #
165
+ #
166
+ #
167
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
168
+ # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
169
+ #
170
+ # @option params [required, String] :function_name
171
+ # Name of the Lambda function whose resource policy you are updating by
172
+ # adding a new permission.
173
+ #
174
+ # You can specify a function name (for example, `Thumbnail`) or you can
175
+ # specify Amazon Resource Name (ARN) of the function (for example,
176
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
177
+ # also allows you to specify partial ARN (for example,
178
+ # `account-id:Thumbnail`). Note that the length constraint applies only
179
+ # to the ARN. If you specify only the function name, it is limited to 64
180
+ # character in length.
181
+ #
182
+ # @option params [required, String] :statement_id
183
+ # A unique statement identifier.
184
+ #
185
+ # @option params [required, String] :action
186
+ # The AWS Lambda action you want to allow in this statement. Each Lambda
187
+ # action is a string starting with `lambda:` followed by the API name .
188
+ # For example, `lambda:CreateFunction`. You can use wildcard
189
+ # (`lambda:*`) to grant permission for all AWS Lambda actions.
190
+ #
191
+ # @option params [required, String] :principal
192
+ # The principal who is getting this permission. It can be Amazon S3
193
+ # service Principal (`s3.amazonaws.com`) if you want Amazon S3 to invoke
194
+ # the function, an AWS account ID if you are granting cross-account
195
+ # permission, or any valid AWS service principal such as
196
+ # `sns.amazonaws.com`. For example, you might want to allow a custom
197
+ # application in another AWS account to push events to AWS Lambda by
198
+ # invoking your function.
199
+ #
200
+ # @option params [String] :source_arn
201
+ # This is optional; however, when granting Amazon S3 permission to
202
+ # invoke your function, you should specify this field with the Amazon
203
+ # Resource Name (ARN) as its value. This ensures that only events
204
+ # generated from the specified source can invoke the function.
205
+ #
206
+ # If you add a permission for the Amazon S3 principal without providing
207
+ # the source ARN, any AWS account that creates a mapping to your
208
+ # function ARN can send events to invoke your Lambda function from
209
+ # Amazon S3.
210
+ #
211
+ # @option params [String] :source_account
212
+ # This parameter is used for S3, SES, CloudWatch Logs and CloudWatch
213
+ # Rules only. The AWS account ID (without a hyphen) of the source owner.
214
+ # For example, if the `SourceArn` identifies a bucket, then this is the
215
+ # bucket owner's account ID. You can use this additional condition to
216
+ # ensure the bucket you specify is owned by a specific account (it is
217
+ # possible the bucket owner deleted the bucket and some other AWS
218
+ # account created the bucket). You can also use this condition to
219
+ # specify all sources (that is, you don't specify the `SourceArn`)
220
+ # owned by a specific account.
221
+ #
222
+ # @option params [String] :event_source_token
223
+ # A unique token that must be supplied by the principal invoking the
224
+ # function. This is currently only used for Alexa Smart Home functions.
225
+ #
226
+ # @option params [String] :qualifier
227
+ # You can use this optional query parameter to describe a qualified ARN
228
+ # using a function version or an alias name. The permission will then
229
+ # apply to the specific qualified ARN. For example, if you specify
230
+ # function version 2 as the qualifier, then permission applies only when
231
+ # request is made using qualified function ARN:
232
+ #
233
+ # `arn:aws:lambda:aws-region:acct-id:function:function-name:2`
234
+ #
235
+ # If you specify an alias name, for example `PROD`, then the permission
236
+ # is valid only for requests made using the alias ARN:
237
+ #
238
+ # `arn:aws:lambda:aws-region:acct-id:function:function-name:PROD`
239
+ #
240
+ # If the qualifier is not specified, the permission is valid only when
241
+ # requests is made using unqualified function ARN.
242
+ #
243
+ # `arn:aws:lambda:aws-region:acct-id:function:function-name`
244
+ #
245
+ # @return [Types::AddPermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
246
+ #
247
+ # * {Types::AddPermissionResponse#statement #statement} => String
248
+ #
249
+ # @example Request syntax with placeholder values
250
+ #
251
+ # resp = client.add_permission({
252
+ # function_name: "FunctionName", # required
253
+ # statement_id: "StatementId", # required
254
+ # action: "Action", # required
255
+ # principal: "Principal", # required
256
+ # source_arn: "Arn",
257
+ # source_account: "SourceOwner",
258
+ # event_source_token: "EventSourceToken",
259
+ # qualifier: "Qualifier",
260
+ # })
261
+ #
262
+ # @example Response structure
263
+ #
264
+ # resp.statement #=> String
265
+ #
266
+ # @overload add_permission(params = {})
267
+ # @param [Hash] params ({})
268
+ def add_permission(params = {}, options = {})
269
+ req = build_request(:add_permission, params)
270
+ req.send_request(options)
271
+ end
291
272
 
292
- # Identifies a stream as an event source for a Lambda function. It can
293
- # be either an Amazon Kinesis stream or an Amazon DynamoDB stream. AWS
294
- # Lambda invokes the specified function when records are posted to the
295
- # stream.
296
- #
297
- # This association between a stream source and a Lambda function is
298
- # called the event source mapping.
299
- #
300
- # This event source mapping is relevant only in the AWS Lambda pull
301
- # model, where AWS Lambda invokes the function. For more information, go
302
- # to [AWS Lambda: How it Works][1] in the *AWS Lambda Developer Guide*.
303
- #
304
- # You provide mapping information (for example, which stream to read
305
- # from and which Lambda function to invoke) in the request body.
306
- #
307
- # Each event source, such as an Amazon Kinesis or a DynamoDB stream, can
308
- # be associated with multiple AWS Lambda function. A given Lambda
309
- # function can be associated with multiple AWS event sources.
310
- #
311
- # If you are using versioning, you can specify a specific function
312
- # version or an alias via the function name parameter. For more
313
- # information about versioning, see [AWS Lambda Function Versioning and
314
- # Aliases][2].
315
- #
316
- # This operation requires permission for the
317
- # `lambda:CreateEventSourceMapping` action.
318
- #
319
- #
320
- #
321
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
322
- # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
323
- # @option params [required, String] :event_source_arn
324
- # The Amazon Resource Name (ARN) of the Amazon Kinesis or the Amazon
325
- # DynamoDB stream that is the event source. Any record added to this
326
- # stream could cause AWS Lambda to invoke your Lambda function, it
327
- # depends on the `BatchSize`. AWS Lambda POSTs the Amazon Kinesis event,
328
- # containing records, to your Lambda function as JSON.
329
- # @option params [required, String] :function_name
330
- # The Lambda function to invoke when AWS Lambda detects an event on the
331
- # stream.
332
- #
333
- # You can specify the function name (for example, `Thumbnail`) or you
334
- # can specify Amazon Resource Name (ARN) of the function (for example,
335
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`).
336
- #
337
- # If you are using versioning, you can also provide a qualified function
338
- # ARN (ARN that is qualified with function version or alias name as
339
- # suffix). For more information about versioning, see [AWS Lambda
340
- # Function Versioning and Aliases][1]
341
- #
342
- # AWS Lambda also allows you to specify only the function name with the
343
- # account ID qualifier (for example, `account-id:Thumbnail`).
344
- #
345
- # Note that the length constraint applies only to the ARN. If you
346
- # specify only the function name, it is limited to 64 character in
347
- # length.
348
- #
349
- #
350
- #
351
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
352
- # @option params [Boolean] :enabled
353
- # Indicates whether AWS Lambda should begin polling the event source. By
354
- # default, `Enabled` is true.
355
- # @option params [Integer] :batch_size
356
- # The largest number of records that AWS Lambda will retrieve from your
357
- # event source at the time of invoking your function. Your function
358
- # receives an event with all the retrieved records. The default is 100
359
- # records.
360
- # @option params [required, String] :starting_position
361
- # The position in the stream where AWS Lambda should start reading.
362
- # Valid only for Kinesis streams. For more information, go to
363
- # [ShardIteratorType][1] in the *Amazon Kinesis API Reference*.
364
- #
365
- #
366
- #
367
- # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
368
- # @option params [Time,DateTime,Date,Integer,String] :starting_position_timestamp
369
- # The timestamp of the data record from which to start reading. Used
370
- # with [shard iterator type][1] AT\_TIMESTAMP. If a record with this
371
- # exact timestamp does not exist, the iterator returned is for the next
372
- # (later) record. If the timestamp is older than the current trim
373
- # horizon, the iterator returned is for the oldest untrimmed data record
374
- # (TRIM\_HORIZON). Valid only for Kinesis streams.
375
- #
376
- #
377
- #
378
- # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
379
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
380
- #
381
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
382
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
383
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
384
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
385
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
386
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
387
- # * {Types::EventSourceMappingConfiguration#state #State} => String
388
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
389
- #
390
- # @example Request syntax with placeholder values
391
- # resp = client.create_event_source_mapping({
392
- # event_source_arn: "Arn", # required
393
- # function_name: "FunctionName", # required
394
- # enabled: false,
395
- # batch_size: 1,
396
- # starting_position: "TRIM_HORIZON", # required, accepts TRIM_HORIZON, LATEST, AT_TIMESTAMP
397
- # starting_position_timestamp: Time.now,
398
- # })
399
- #
400
- # @example Response structure
401
- # resp.uuid #=> String
402
- # resp.batch_size #=> Integer
403
- # resp.event_source_arn #=> String
404
- # resp.function_arn #=> String
405
- # resp.last_modified #=> Time
406
- # resp.last_processing_result #=> String
407
- # resp.state #=> String
408
- # resp.state_transition_reason #=> String
409
- # @overload create_event_source_mapping(params = {})
410
- # @param [Hash] params ({})
411
- def create_event_source_mapping(params = {}, options = {})
412
- req = build_request(:create_event_source_mapping, params)
413
- req.send_request(options)
414
- end
273
+ # Creates an alias that points to the specified Lambda function version.
274
+ # For more information, see [Introduction to AWS Lambda Aliases][1].
275
+ #
276
+ # Alias names are unique for a given function. This requires permission
277
+ # for the lambda:CreateAlias action.
278
+ #
279
+ #
280
+ #
281
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
282
+ #
283
+ # @option params [required, String] :function_name
284
+ # Name of the Lambda function for which you want to create an alias.
285
+ #
286
+ # @option params [required, String] :name
287
+ # Name for the alias you are creating.
288
+ #
289
+ # @option params [required, String] :function_version
290
+ # Lambda function version for which you are creating the alias.
291
+ #
292
+ # @option params [String] :description
293
+ # Description of the alias.
294
+ #
295
+ # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
296
+ #
297
+ # * {Types::AliasConfiguration#alias_arn #alias_arn} => String
298
+ # * {Types::AliasConfiguration#name #name} => String
299
+ # * {Types::AliasConfiguration#function_version #function_version} => String
300
+ # * {Types::AliasConfiguration#description #description} => String
301
+ #
302
+ # @example Request syntax with placeholder values
303
+ #
304
+ # resp = client.create_alias({
305
+ # function_name: "FunctionName", # required
306
+ # name: "Alias", # required
307
+ # function_version: "Version", # required
308
+ # description: "Description",
309
+ # })
310
+ #
311
+ # @example Response structure
312
+ #
313
+ # resp.alias_arn #=> String
314
+ # resp.name #=> String
315
+ # resp.function_version #=> String
316
+ # resp.description #=> String
317
+ #
318
+ # @overload create_alias(params = {})
319
+ # @param [Hash] params ({})
320
+ def create_alias(params = {}, options = {})
321
+ req = build_request(:create_alias, params)
322
+ req.send_request(options)
323
+ end
415
324
 
416
- # Creates a new Lambda function. The function metadata is created from
417
- # the request parameters, and the code for the function is provided by a
418
- # .zip file in the request body. If the function name already exists,
419
- # the operation will fail. Note that the function name is
420
- # case-sensitive.
421
- #
422
- # If you are using versioning, you can also publish a version of the
423
- # Lambda function you are creating using the `Publish` parameter. For
424
- # more information about versioning, see [AWS Lambda Function Versioning
425
- # and Aliases][1].
426
- #
427
- # This operation requires permission for the `lambda:CreateFunction`
428
- # action.
429
- #
430
- #
431
- #
432
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
433
- # @option params [required, String] :function_name
434
- # The name you want to assign to the function you are uploading. The
435
- # function names appear in the console and are returned in the
436
- # ListFunctions API. Function names are used to specify functions to
437
- # other AWS Lambda APIs, such as Invoke.
438
- # @option params [required, String] :runtime
439
- # The runtime environment for the Lambda function you are uploading.
440
- #
441
- # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
442
- # use earlier runtime (v0.10.42), set the value to "nodejs".
443
- #
444
- # <note markdown="1"> You can no longer create functions using the v0.10.42 runtime version
445
- # as of November, 2016. Existing functions will be supported until early
446
- # 2017 but we recommend you migrate them to nodejs4.3 runtime version as
447
- # soon as possible.
448
- #
449
- # </note>
450
- # @option params [required, String] :role
451
- # The Amazon Resource Name (ARN) of the IAM role that Lambda assumes
452
- # when it executes your function to access any other Amazon Web Services
453
- # (AWS) resources. For more information, see [AWS Lambda: How it
454
- # Works][1].
455
- #
456
- #
457
- #
458
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
459
- # @option params [required, String] :handler
460
- # The function within your code that Lambda calls to begin execution.
461
- # For Node.js, it is the *module-name*.*export* value in your function.
462
- # For Java, it can be `package.class-name::handler` or
463
- # `package.class-name`. For more information, see [Lambda Function
464
- # Handler (Java)][1].
465
- #
466
- #
467
- #
468
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/java-programming-model-handler-types.html
469
- # @option params [required, Types::FunctionCode] :code
470
- # The code for the Lambda function.
471
- # @option params [String] :description
472
- # A short, user-defined function description. Lambda does not use this
473
- # value. Assign a meaningful description as you see fit.
474
- # @option params [Integer] :timeout
475
- # The function execution time at which Lambda should terminate the
476
- # function. Because the execution time has cost implications, we
477
- # recommend you set this value based on your expected execution time.
478
- # The default is 3 seconds.
479
- # @option params [Integer] :memory_size
480
- # The amount of memory, in MB, your Lambda function is given. Lambda
481
- # uses this memory size to infer the amount of CPU and memory allocated
482
- # to your function. Your function use-case determines your CPU and
483
- # memory requirements. For example, a database operation might need less
484
- # memory compared to an image processing function. The default value is
485
- # 128 MB. The value must be a multiple of 64 MB.
486
- # @option params [Boolean] :publish
487
- # This boolean parameter can be used to request AWS Lambda to create the
488
- # Lambda function and publish a version as an atomic operation.
489
- # @option params [Types::VpcConfig] :vpc_config
490
- # If your Lambda function accesses resources in a VPC, you provide this
491
- # parameter identifying the list of security group IDs and subnet IDs.
492
- # These must belong to the same VPC. You must provide at least one
493
- # security group and one subnet ID.
494
- # @option params [Types::DeadLetterConfig] :dead_letter_config
495
- # The parent object that contains the target ARN (Amazon Resource Name)
496
- # of an Amazon SQS queue or Amazon SNS topic.
497
- # @option params [Types::Environment] :environment
498
- # The parent object that contains your environment's configuration
499
- # settings.
500
- # @option params [String] :kms_key_arn
501
- # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
502
- # function's environment variables. If not provided, AWS Lambda will
503
- # use a default service key.
504
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
505
- #
506
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
507
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
508
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
509
- # * {Types::FunctionConfiguration#role #Role} => String
510
- # * {Types::FunctionConfiguration#handler #Handler} => String
511
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
512
- # * {Types::FunctionConfiguration#description #Description} => String
513
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
514
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
515
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
516
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
517
- # * {Types::FunctionConfiguration#version #Version} => String
518
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
519
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
520
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
521
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
522
- #
523
- # @example Request syntax with placeholder values
524
- # resp = client.create_function({
525
- # function_name: "FunctionName", # required
526
- # runtime: "nodejs", # required, accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
527
- # role: "RoleArn", # required
528
- # handler: "Handler", # required
529
- # code: { # required
530
- # zip_file: "data",
531
- # s3_bucket: "S3Bucket",
532
- # s3_key: "S3Key",
533
- # s3_object_version: "S3ObjectVersion",
534
- # },
535
- # description: "Description",
536
- # timeout: 1,
537
- # memory_size: 1,
538
- # publish: false,
539
- # vpc_config: {
540
- # subnet_ids: ["SubnetId"],
541
- # security_group_ids: ["SecurityGroupId"],
542
- # },
543
- # dead_letter_config: {
544
- # target_arn: "ResourceArn",
545
- # },
546
- # environment: {
547
- # variables: {
548
- # "EnvironmentVariableName" => "EnvironmentVariableValue",
549
- # },
550
- # },
551
- # kms_key_arn: "KMSKeyArn",
552
- # })
553
- #
554
- # @example Response structure
555
- # resp.function_name #=> String
556
- # resp.function_arn #=> String
557
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
558
- # resp.role #=> String
559
- # resp.handler #=> String
560
- # resp.code_size #=> Integer
561
- # resp.description #=> String
562
- # resp.timeout #=> Integer
563
- # resp.memory_size #=> Integer
564
- # resp.last_modified #=> Time
565
- # resp.code_sha_256 #=> String
566
- # resp.version #=> String
567
- # resp.vpc_config.subnet_ids #=> Array
568
- # resp.vpc_config.subnet_ids[0] #=> String
569
- # resp.vpc_config.security_group_ids #=> Array
570
- # resp.vpc_config.security_group_ids[0] #=> String
571
- # resp.vpc_config.vpc_id #=> String
572
- # resp.dead_letter_config.target_arn #=> String
573
- # resp.environment.variables #=> Hash
574
- # resp.environment.variables["EnvironmentVariableName"] #=> String
575
- # resp.environment.error.error_code #=> String
576
- # resp.environment.error.message #=> String
577
- # resp.kms_key_arn #=> String
578
- # @overload create_function(params = {})
579
- # @param [Hash] params ({})
580
- def create_function(params = {}, options = {})
581
- req = build_request(:create_function, params)
582
- req.send_request(options)
583
- end
325
+ # Identifies a stream as an event source for a Lambda function. It can
326
+ # be either an Amazon Kinesis stream or an Amazon DynamoDB stream. AWS
327
+ # Lambda invokes the specified function when records are posted to the
328
+ # stream.
329
+ #
330
+ # This association between a stream source and a Lambda function is
331
+ # called the event source mapping.
332
+ #
333
+ # This event source mapping is relevant only in the AWS Lambda pull
334
+ # model, where AWS Lambda invokes the function. For more information,
335
+ # see [AWS Lambda: How it Works][1] in the *AWS Lambda Developer Guide*.
336
+ #
337
+ # You provide mapping information (for example, which stream to read
338
+ # from and which Lambda function to invoke) in the request body.
339
+ #
340
+ # Each event source, such as an Amazon Kinesis or a DynamoDB stream, can
341
+ # be associated with multiple AWS Lambda function. A given Lambda
342
+ # function can be associated with multiple AWS event sources.
343
+ #
344
+ # If you are using versioning, you can specify a specific function
345
+ # version or an alias via the function name parameter. For more
346
+ # information about versioning, see [AWS Lambda Function Versioning and
347
+ # Aliases][2].
348
+ #
349
+ # This operation requires permission for the
350
+ # `lambda:CreateEventSourceMapping` action.
351
+ #
352
+ #
353
+ #
354
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
355
+ # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
356
+ #
357
+ # @option params [required, String] :event_source_arn
358
+ # The Amazon Resource Name (ARN) of the Amazon Kinesis or the Amazon
359
+ # DynamoDB stream that is the event source. Any record added to this
360
+ # stream could cause AWS Lambda to invoke your Lambda function, it
361
+ # depends on the `BatchSize`. AWS Lambda POSTs the Amazon Kinesis event,
362
+ # containing records, to your Lambda function as JSON.
363
+ #
364
+ # @option params [required, String] :function_name
365
+ # The Lambda function to invoke when AWS Lambda detects an event on the
366
+ # stream.
367
+ #
368
+ # You can specify the function name (for example, `Thumbnail`) or you
369
+ # can specify Amazon Resource Name (ARN) of the function (for example,
370
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`).
371
+ #
372
+ # If you are using versioning, you can also provide a qualified function
373
+ # ARN (ARN that is qualified with function version or alias name as
374
+ # suffix). For more information about versioning, see [AWS Lambda
375
+ # Function Versioning and Aliases][1]
376
+ #
377
+ # AWS Lambda also allows you to specify only the function name with the
378
+ # account ID qualifier (for example, `account-id:Thumbnail`).
379
+ #
380
+ # Note that the length constraint applies only to the ARN. If you
381
+ # specify only the function name, it is limited to 64 character in
382
+ # length.
383
+ #
384
+ #
385
+ #
386
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
387
+ #
388
+ # @option params [Boolean] :enabled
389
+ # Indicates whether AWS Lambda should begin polling the event source. By
390
+ # default, `Enabled` is true.
391
+ #
392
+ # @option params [Integer] :batch_size
393
+ # The largest number of records that AWS Lambda will retrieve from your
394
+ # event source at the time of invoking your function. Your function
395
+ # receives an event with all the retrieved records. The default is 100
396
+ # records.
397
+ #
398
+ # @option params [required, String] :starting_position
399
+ # The position in the stream where AWS Lambda should start reading.
400
+ # Valid only for Kinesis streams. For more information, see
401
+ # [ShardIteratorType][1] in the *Amazon Kinesis API Reference*.
402
+ #
403
+ #
404
+ #
405
+ # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
406
+ #
407
+ # @option params [Time,DateTime,Date,Integer,String] :starting_position_timestamp
408
+ # The timestamp of the data record from which to start reading. Used
409
+ # with [shard iterator type][1] AT\_TIMESTAMP. If a record with this
410
+ # exact timestamp does not exist, the iterator returned is for the next
411
+ # (later) record. If the timestamp is older than the current trim
412
+ # horizon, the iterator returned is for the oldest untrimmed data record
413
+ # (TRIM\_HORIZON). Valid only for Kinesis streams.
414
+ #
415
+ #
416
+ #
417
+ # [1]: http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType
418
+ #
419
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
420
+ #
421
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
422
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
423
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
424
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
425
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
426
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
427
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
428
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
429
+ #
430
+ # @example Request syntax with placeholder values
431
+ #
432
+ # resp = client.create_event_source_mapping({
433
+ # event_source_arn: "Arn", # required
434
+ # function_name: "FunctionName", # required
435
+ # enabled: false,
436
+ # batch_size: 1,
437
+ # starting_position: "TRIM_HORIZON", # required, accepts TRIM_HORIZON, LATEST, AT_TIMESTAMP
438
+ # starting_position_timestamp: Time.now,
439
+ # })
440
+ #
441
+ # @example Response structure
442
+ #
443
+ # resp.uuid #=> String
444
+ # resp.batch_size #=> Integer
445
+ # resp.event_source_arn #=> String
446
+ # resp.function_arn #=> String
447
+ # resp.last_modified #=> Time
448
+ # resp.last_processing_result #=> String
449
+ # resp.state #=> String
450
+ # resp.state_transition_reason #=> String
451
+ #
452
+ # @overload create_event_source_mapping(params = {})
453
+ # @param [Hash] params ({})
454
+ def create_event_source_mapping(params = {}, options = {})
455
+ req = build_request(:create_event_source_mapping, params)
456
+ req.send_request(options)
457
+ end
584
458
 
585
- # Deletes the specified Lambda function alias. For more information, see
586
- # [Introduction to AWS Lambda Aliases][1].
587
- #
588
- # This requires permission for the lambda:DeleteAlias action.
589
- #
590
- #
591
- #
592
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
593
- # @option params [required, String] :function_name
594
- # The Lambda function name for which the alias is created. Deleting an
595
- # alias does not delete the function version to which it is pointing.
596
- # @option params [required, String] :name
597
- # Name of the alias to delete.
598
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
599
- #
600
- # @example Request syntax with placeholder values
601
- # resp = client.delete_alias({
602
- # function_name: "FunctionName", # required
603
- # name: "Alias", # required
604
- # })
605
- # @overload delete_alias(params = {})
606
- # @param [Hash] params ({})
607
- def delete_alias(params = {}, options = {})
608
- req = build_request(:delete_alias, params)
609
- req.send_request(options)
610
- end
459
+ # Creates a new Lambda function. The function metadata is created from
460
+ # the request parameters, and the code for the function is provided by a
461
+ # .zip file in the request body. If the function name already exists,
462
+ # the operation will fail. Note that the function name is
463
+ # case-sensitive.
464
+ #
465
+ # If you are using versioning, you can also publish a version of the
466
+ # Lambda function you are creating using the `Publish` parameter. For
467
+ # more information about versioning, see [AWS Lambda Function Versioning
468
+ # and Aliases][1].
469
+ #
470
+ # This operation requires permission for the `lambda:CreateFunction`
471
+ # action.
472
+ #
473
+ #
474
+ #
475
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
476
+ #
477
+ # @option params [required, String] :function_name
478
+ # The name you want to assign to the function you are uploading. The
479
+ # function names appear in the console and are returned in the
480
+ # ListFunctions API. Function names are used to specify functions to
481
+ # other AWS Lambda API operations, such as Invoke.
482
+ #
483
+ # @option params [required, String] :runtime
484
+ # The runtime environment for the Lambda function you are uploading.
485
+ #
486
+ # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
487
+ # use earlier runtime (v0.10.42), set the value to "nodejs".
488
+ #
489
+ # <note markdown="1"> You can no longer create functions using the v0.10.42 runtime version
490
+ # as of November, 2016. Existing functions will be supported until early
491
+ # 2017, but we recommend you migrate them to nodejs4.3 runtime version
492
+ # as soon as possible.
493
+ #
494
+ # </note>
495
+ #
496
+ # @option params [required, String] :role
497
+ # The Amazon Resource Name (ARN) of the IAM role that Lambda assumes
498
+ # when it executes your function to access any other Amazon Web Services
499
+ # (AWS) resources. For more information, see [AWS Lambda: How it
500
+ # Works][1].
501
+ #
502
+ #
503
+ #
504
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html
505
+ #
506
+ # @option params [required, String] :handler
507
+ # The function within your code that Lambda calls to begin execution.
508
+ # For Node.js, it is the *module-name*.*export* value in your function.
509
+ # For Java, it can be `package.class-name::handler` or
510
+ # `package.class-name`. For more information, see [Lambda Function
511
+ # Handler (Java)][1].
512
+ #
513
+ #
514
+ #
515
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/java-programming-model-handler-types.html
516
+ #
517
+ # @option params [required, Types::FunctionCode] :code
518
+ # The code for the Lambda function.
519
+ #
520
+ # @option params [String] :description
521
+ # A short, user-defined function description. Lambda does not use this
522
+ # value. Assign a meaningful description as you see fit.
523
+ #
524
+ # @option params [Integer] :timeout
525
+ # The function execution time at which Lambda should terminate the
526
+ # function. Because the execution time has cost implications, we
527
+ # recommend you set this value based on your expected execution time.
528
+ # The default is 3 seconds.
529
+ #
530
+ # @option params [Integer] :memory_size
531
+ # The amount of memory, in MB, your Lambda function is given. Lambda
532
+ # uses this memory size to infer the amount of CPU and memory allocated
533
+ # to your function. Your function use-case determines your CPU and
534
+ # memory requirements. For example, a database operation might need less
535
+ # memory compared to an image processing function. The default value is
536
+ # 128 MB. The value must be a multiple of 64 MB.
537
+ #
538
+ # @option params [Boolean] :publish
539
+ # This boolean parameter can be used to request AWS Lambda to create the
540
+ # Lambda function and publish a version as an atomic operation.
541
+ #
542
+ # @option params [Types::VpcConfig] :vpc_config
543
+ # If your Lambda function accesses resources in a VPC, you provide this
544
+ # parameter identifying the list of security group IDs and subnet IDs.
545
+ # These must belong to the same VPC. You must provide at least one
546
+ # security group and one subnet ID.
547
+ #
548
+ # @option params [Types::DeadLetterConfig] :dead_letter_config
549
+ # The parent object that contains the target Amazon Resource Name (ARN)
550
+ # of an Amazon SQS queue or Amazon SNS topic.
551
+ #
552
+ # @option params [Types::Environment] :environment
553
+ # The parent object that contains your environment's configuration
554
+ # settings.
555
+ #
556
+ # @option params [String] :kms_key_arn
557
+ # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
558
+ # function's environment variables. If not provided, AWS Lambda will
559
+ # use a default service key.
560
+ #
561
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
562
+ #
563
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
564
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
565
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
566
+ # * {Types::FunctionConfiguration#role #role} => String
567
+ # * {Types::FunctionConfiguration#handler #handler} => String
568
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
569
+ # * {Types::FunctionConfiguration#description #description} => String
570
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
571
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
572
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
573
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
574
+ # * {Types::FunctionConfiguration#version #version} => String
575
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
576
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
577
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
578
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
579
+ #
580
+ # @example Request syntax with placeholder values
581
+ #
582
+ # resp = client.create_function({
583
+ # function_name: "FunctionName", # required
584
+ # runtime: "nodejs", # required, accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
585
+ # role: "RoleArn", # required
586
+ # handler: "Handler", # required
587
+ # code: { # required
588
+ # zip_file: "data",
589
+ # s3_bucket: "S3Bucket",
590
+ # s3_key: "S3Key",
591
+ # s3_object_version: "S3ObjectVersion",
592
+ # },
593
+ # description: "Description",
594
+ # timeout: 1,
595
+ # memory_size: 1,
596
+ # publish: false,
597
+ # vpc_config: {
598
+ # subnet_ids: ["SubnetId"],
599
+ # security_group_ids: ["SecurityGroupId"],
600
+ # },
601
+ # dead_letter_config: {
602
+ # target_arn: "ResourceArn",
603
+ # },
604
+ # environment: {
605
+ # variables: {
606
+ # "EnvironmentVariableName" => "EnvironmentVariableValue",
607
+ # },
608
+ # },
609
+ # kms_key_arn: "KMSKeyArn",
610
+ # })
611
+ #
612
+ # @example Response structure
613
+ #
614
+ # resp.function_name #=> String
615
+ # resp.function_arn #=> String
616
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
617
+ # resp.role #=> String
618
+ # resp.handler #=> String
619
+ # resp.code_size #=> Integer
620
+ # resp.description #=> String
621
+ # resp.timeout #=> Integer
622
+ # resp.memory_size #=> Integer
623
+ # resp.last_modified #=> Time
624
+ # resp.code_sha_256 #=> String
625
+ # resp.version #=> String
626
+ # resp.vpc_config.subnet_ids #=> Array
627
+ # resp.vpc_config.subnet_ids[0] #=> String
628
+ # resp.vpc_config.security_group_ids #=> Array
629
+ # resp.vpc_config.security_group_ids[0] #=> String
630
+ # resp.vpc_config.vpc_id #=> String
631
+ # resp.dead_letter_config.target_arn #=> String
632
+ # resp.environment.variables #=> Hash
633
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
634
+ # resp.environment.error.error_code #=> String
635
+ # resp.environment.error.message #=> String
636
+ # resp.kms_key_arn #=> String
637
+ #
638
+ # @overload create_function(params = {})
639
+ # @param [Hash] params ({})
640
+ def create_function(params = {}, options = {})
641
+ req = build_request(:create_function, params)
642
+ req.send_request(options)
643
+ end
611
644
 
612
- # Removes an event source mapping. This means AWS Lambda will no longer
613
- # invoke the function for events in the associated source.
614
- #
615
- # This operation requires permission for the
616
- # `lambda:DeleteEventSourceMapping` action.
617
- # @option params [required, String] :uuid
618
- # The event source mapping ID.
619
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
620
- #
621
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
622
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
623
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
624
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
625
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
626
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
627
- # * {Types::EventSourceMappingConfiguration#state #State} => String
628
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
629
- #
630
- # @example Request syntax with placeholder values
631
- # resp = client.delete_event_source_mapping({
632
- # uuid: "String", # required
633
- # })
634
- #
635
- # @example Response structure
636
- # resp.uuid #=> String
637
- # resp.batch_size #=> Integer
638
- # resp.event_source_arn #=> String
639
- # resp.function_arn #=> String
640
- # resp.last_modified #=> Time
641
- # resp.last_processing_result #=> String
642
- # resp.state #=> String
643
- # resp.state_transition_reason #=> String
644
- # @overload delete_event_source_mapping(params = {})
645
- # @param [Hash] params ({})
646
- def delete_event_source_mapping(params = {}, options = {})
647
- req = build_request(:delete_event_source_mapping, params)
648
- req.send_request(options)
649
- end
645
+ # Deletes the specified Lambda function alias. For more information, see
646
+ # [Introduction to AWS Lambda Aliases][1].
647
+ #
648
+ # This requires permission for the lambda:DeleteAlias action.
649
+ #
650
+ #
651
+ #
652
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
653
+ #
654
+ # @option params [required, String] :function_name
655
+ # The Lambda function name for which the alias is created. Deleting an
656
+ # alias does not delete the function version to which it is pointing.
657
+ #
658
+ # @option params [required, String] :name
659
+ # Name of the alias to delete.
660
+ #
661
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
662
+ #
663
+ # @example Request syntax with placeholder values
664
+ #
665
+ # resp = client.delete_alias({
666
+ # function_name: "FunctionName", # required
667
+ # name: "Alias", # required
668
+ # })
669
+ #
670
+ # @overload delete_alias(params = {})
671
+ # @param [Hash] params ({})
672
+ def delete_alias(params = {}, options = {})
673
+ req = build_request(:delete_alias, params)
674
+ req.send_request(options)
675
+ end
650
676
 
651
- # Deletes the specified Lambda function code and configuration.
652
- #
653
- # If you are using the versioning feature and you don't specify a
654
- # function version in your `DeleteFunction` request, AWS Lambda will
655
- # delete the function, including all its versions, and any aliases
656
- # pointing to the function versions. To delete a specific function
657
- # version, you must provide the function version via the `Qualifier`
658
- # parameter. For information about function versioning, see [AWS Lambda
659
- # Function Versioning and Aliases][1].
660
- #
661
- # When you delete a function the associated resource policy is also
662
- # deleted. You will need to delete the event source mappings explicitly.
663
- #
664
- # This operation requires permission for the `lambda:DeleteFunction`
665
- # action.
666
- #
667
- #
668
- #
669
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
670
- # @option params [required, String] :function_name
671
- # The Lambda function to delete.
672
- #
673
- # You can specify the function name (for example, `Thumbnail`) or you
674
- # can specify Amazon Resource Name (ARN) of the function (for example,
675
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
676
- # using versioning, you can also provide a qualified function ARN (ARN
677
- # that is qualified with function version or alias name as suffix). AWS
678
- # Lambda also allows you to specify only the function name with the
679
- # account ID qualifier (for example, `account-id:Thumbnail`). Note that
680
- # the length constraint applies only to the ARN. If you specify only the
681
- # function name, it is limited to 64 character in length.
682
- # @option params [String] :qualifier
683
- # Using this optional parameter you can specify a function version (but
684
- # not the `$LATEST` version) to direct AWS Lambda to delete a specific
685
- # function version. If the function version has one or more aliases
686
- # pointing to it, you will get an error because you cannot have aliases
687
- # pointing to it. You can delete any function version but not the
688
- # `$LATEST`, that is, you cannot specify `$LATEST` as the value of this
689
- # parameter. The `$LATEST` version can be deleted only when you want to
690
- # delete all the function versions and aliases.
691
- #
692
- # You can only specify a function version, not an alias name, using this
693
- # parameter. You cannot delete a function version using its alias.
694
- #
695
- # If you don't specify this parameter, AWS Lambda will delete the
696
- # function, including all of its versions and aliases.
697
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
698
- #
699
- # @example Request syntax with placeholder values
700
- # resp = client.delete_function({
701
- # function_name: "FunctionName", # required
702
- # qualifier: "Qualifier",
703
- # })
704
- # @overload delete_function(params = {})
705
- # @param [Hash] params ({})
706
- def delete_function(params = {}, options = {})
707
- req = build_request(:delete_function, params)
708
- req.send_request(options)
709
- end
677
+ # Removes an event source mapping. This means AWS Lambda will no longer
678
+ # invoke the function for events in the associated source.
679
+ #
680
+ # This operation requires permission for the
681
+ # `lambda:DeleteEventSourceMapping` action.
682
+ #
683
+ # @option params [required, String] :uuid
684
+ # The event source mapping ID.
685
+ #
686
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
687
+ #
688
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
689
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
690
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
691
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
692
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
693
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
694
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
695
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
696
+ #
697
+ # @example Request syntax with placeholder values
698
+ #
699
+ # resp = client.delete_event_source_mapping({
700
+ # uuid: "String", # required
701
+ # })
702
+ #
703
+ # @example Response structure
704
+ #
705
+ # resp.uuid #=> String
706
+ # resp.batch_size #=> Integer
707
+ # resp.event_source_arn #=> String
708
+ # resp.function_arn #=> String
709
+ # resp.last_modified #=> Time
710
+ # resp.last_processing_result #=> String
711
+ # resp.state #=> String
712
+ # resp.state_transition_reason #=> String
713
+ #
714
+ # @overload delete_event_source_mapping(params = {})
715
+ # @param [Hash] params ({})
716
+ def delete_event_source_mapping(params = {}, options = {})
717
+ req = build_request(:delete_event_source_mapping, params)
718
+ req.send_request(options)
719
+ end
710
720
 
711
- # Returns a customer's account settings.
712
- #
713
- # You can use this operation to retrieve Lambda limit information such
714
- # as code size and concurrency limits. For more information on limits,
715
- # see [AWS Lambda Limits][1]. You can also retrieve resource usage
716
- # statistics such as code storage usage and function count.
717
- #
718
- #
719
- #
720
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/limits.html
721
- # @return [Types::GetAccountSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
722
- #
723
- # * {Types::GetAccountSettingsResponse#account_limit #AccountLimit} => Types::AccountLimit
724
- # * {Types::GetAccountSettingsResponse#account_usage #AccountUsage} => Types::AccountUsage
725
- #
726
- # @example Request syntax with placeholder values
727
- # resp = client.get_account_settings()
728
- #
729
- # @example Response structure
730
- # resp.account_limit.total_code_size #=> Integer
731
- # resp.account_limit.code_size_unzipped #=> Integer
732
- # resp.account_limit.code_size_zipped #=> Integer
733
- # resp.account_limit.concurrent_executions #=> Integer
734
- # resp.account_usage.total_code_size #=> Integer
735
- # resp.account_usage.function_count #=> Integer
736
- # @overload get_account_settings(params = {})
737
- # @param [Hash] params ({})
738
- def get_account_settings(params = {}, options = {})
739
- req = build_request(:get_account_settings, params)
740
- req.send_request(options)
741
- end
721
+ # Deletes the specified Lambda function code and configuration.
722
+ #
723
+ # If you are using the versioning feature and you don't specify a
724
+ # function version in your `DeleteFunction` request, AWS Lambda will
725
+ # delete the function, including all its versions, and any aliases
726
+ # pointing to the function versions. To delete a specific function
727
+ # version, you must provide the function version via the `Qualifier`
728
+ # parameter. For information about function versioning, see [AWS Lambda
729
+ # Function Versioning and Aliases][1].
730
+ #
731
+ # When you delete a function the associated resource policy is also
732
+ # deleted. You will need to delete the event source mappings explicitly.
733
+ #
734
+ # This operation requires permission for the `lambda:DeleteFunction`
735
+ # action.
736
+ #
737
+ #
738
+ #
739
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
740
+ #
741
+ # @option params [required, String] :function_name
742
+ # The Lambda function to delete.
743
+ #
744
+ # You can specify the function name (for example, `Thumbnail`) or you
745
+ # can specify Amazon Resource Name (ARN) of the function (for example,
746
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
747
+ # using versioning, you can also provide a qualified function ARN (ARN
748
+ # that is qualified with function version or alias name as suffix). AWS
749
+ # Lambda also allows you to specify only the function name with the
750
+ # account ID qualifier (for example, `account-id:Thumbnail`). Note that
751
+ # the length constraint applies only to the ARN. If you specify only the
752
+ # function name, it is limited to 64 character in length.
753
+ #
754
+ # @option params [String] :qualifier
755
+ # Using this optional parameter you can specify a function version (but
756
+ # not the `$LATEST` version) to direct AWS Lambda to delete a specific
757
+ # function version. If the function version has one or more aliases
758
+ # pointing to it, you will get an error because you cannot have aliases
759
+ # pointing to it. You can delete any function version but not the
760
+ # `$LATEST`, that is, you cannot specify `$LATEST` as the value of this
761
+ # parameter. The `$LATEST` version can be deleted only when you want to
762
+ # delete all the function versions and aliases.
763
+ #
764
+ # You can only specify a function version, not an alias name, using this
765
+ # parameter. You cannot delete a function version using its alias.
766
+ #
767
+ # If you don't specify this parameter, AWS Lambda will delete the
768
+ # function, including all of its versions and aliases.
769
+ #
770
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
771
+ #
772
+ # @example Request syntax with placeholder values
773
+ #
774
+ # resp = client.delete_function({
775
+ # function_name: "FunctionName", # required
776
+ # qualifier: "Qualifier",
777
+ # })
778
+ #
779
+ # @overload delete_function(params = {})
780
+ # @param [Hash] params ({})
781
+ def delete_function(params = {}, options = {})
782
+ req = build_request(:delete_function, params)
783
+ req.send_request(options)
784
+ end
742
785
 
743
- # Returns the specified alias information such as the alias ARN,
744
- # description, and function version it is pointing to. For more
745
- # information, see [Introduction to AWS Lambda Aliases][1].
746
- #
747
- # This requires permission for the `lambda:GetAlias` action.
748
- #
749
- #
750
- #
751
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
752
- # @option params [required, String] :function_name
753
- # Function name for which the alias is created. An alias is a
754
- # subresource that exists only in the context of an existing Lambda
755
- # function so you must specify the function name.
756
- # @option params [required, String] :name
757
- # Name of the alias for which you want to retrieve information.
758
- # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
759
- #
760
- # * {Types::AliasConfiguration#alias_arn #AliasArn} => String
761
- # * {Types::AliasConfiguration#name #Name} => String
762
- # * {Types::AliasConfiguration#function_version #FunctionVersion} => String
763
- # * {Types::AliasConfiguration#description #Description} => String
764
- #
765
- # @example Request syntax with placeholder values
766
- # resp = client.get_alias({
767
- # function_name: "FunctionName", # required
768
- # name: "Alias", # required
769
- # })
770
- #
771
- # @example Response structure
772
- # resp.alias_arn #=> String
773
- # resp.name #=> String
774
- # resp.function_version #=> String
775
- # resp.description #=> String
776
- # @overload get_alias(params = {})
777
- # @param [Hash] params ({})
778
- def get_alias(params = {}, options = {})
779
- req = build_request(:get_alias, params)
780
- req.send_request(options)
781
- end
786
+ # Returns a customer's account settings.
787
+ #
788
+ # You can use this operation to retrieve Lambda limits information, such
789
+ # as code size and concurrency limits. For more information about
790
+ # limits, see [AWS Lambda Limits][1]. You can also retrieve resource
791
+ # usage statistics, such as code storage usage and function count.
792
+ #
793
+ #
794
+ #
795
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/limits.html
796
+ #
797
+ # @return [Types::GetAccountSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
798
+ #
799
+ # * {Types::GetAccountSettingsResponse#account_limit #account_limit} => Types::AccountLimit
800
+ # * {Types::GetAccountSettingsResponse#account_usage #account_usage} => Types::AccountUsage
801
+ #
802
+ # @example Response structure
803
+ #
804
+ # resp.account_limit.total_code_size #=> Integer
805
+ # resp.account_limit.code_size_unzipped #=> Integer
806
+ # resp.account_limit.code_size_zipped #=> Integer
807
+ # resp.account_limit.concurrent_executions #=> Integer
808
+ # resp.account_usage.total_code_size #=> Integer
809
+ # resp.account_usage.function_count #=> Integer
810
+ #
811
+ # @overload get_account_settings(params = {})
812
+ # @param [Hash] params ({})
813
+ def get_account_settings(params = {}, options = {})
814
+ req = build_request(:get_account_settings, params)
815
+ req.send_request(options)
816
+ end
782
817
 
783
- # Returns configuration information for the specified event source
784
- # mapping (see CreateEventSourceMapping).
785
- #
786
- # This operation requires permission for the
787
- # `lambda:GetEventSourceMapping` action.
788
- # @option params [required, String] :uuid
789
- # The AWS Lambda assigned ID of the event source mapping.
790
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
791
- #
792
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
793
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
794
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
795
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
796
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
797
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
798
- # * {Types::EventSourceMappingConfiguration#state #State} => String
799
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
800
- #
801
- # @example Request syntax with placeholder values
802
- # resp = client.get_event_source_mapping({
803
- # uuid: "String", # required
804
- # })
805
- #
806
- # @example Response structure
807
- # resp.uuid #=> String
808
- # resp.batch_size #=> Integer
809
- # resp.event_source_arn #=> String
810
- # resp.function_arn #=> String
811
- # resp.last_modified #=> Time
812
- # resp.last_processing_result #=> String
813
- # resp.state #=> String
814
- # resp.state_transition_reason #=> String
815
- # @overload get_event_source_mapping(params = {})
816
- # @param [Hash] params ({})
817
- def get_event_source_mapping(params = {}, options = {})
818
- req = build_request(:get_event_source_mapping, params)
819
- req.send_request(options)
820
- end
818
+ # Returns the specified alias information such as the alias ARN,
819
+ # description, and function version it is pointing to. For more
820
+ # information, see [Introduction to AWS Lambda Aliases][1].
821
+ #
822
+ # This requires permission for the `lambda:GetAlias` action.
823
+ #
824
+ #
825
+ #
826
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
827
+ #
828
+ # @option params [required, String] :function_name
829
+ # Function name for which the alias is created. An alias is a
830
+ # subresource that exists only in the context of an existing Lambda
831
+ # function so you must specify the function name.
832
+ #
833
+ # @option params [required, String] :name
834
+ # Name of the alias for which you want to retrieve information.
835
+ #
836
+ # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
837
+ #
838
+ # * {Types::AliasConfiguration#alias_arn #alias_arn} => String
839
+ # * {Types::AliasConfiguration#name #name} => String
840
+ # * {Types::AliasConfiguration#function_version #function_version} => String
841
+ # * {Types::AliasConfiguration#description #description} => String
842
+ #
843
+ # @example Request syntax with placeholder values
844
+ #
845
+ # resp = client.get_alias({
846
+ # function_name: "FunctionName", # required
847
+ # name: "Alias", # required
848
+ # })
849
+ #
850
+ # @example Response structure
851
+ #
852
+ # resp.alias_arn #=> String
853
+ # resp.name #=> String
854
+ # resp.function_version #=> String
855
+ # resp.description #=> String
856
+ #
857
+ # @overload get_alias(params = {})
858
+ # @param [Hash] params ({})
859
+ def get_alias(params = {}, options = {})
860
+ req = build_request(:get_alias, params)
861
+ req.send_request(options)
862
+ end
821
863
 
822
- # Returns the configuration information of the Lambda function and a
823
- # presigned URL link to the .zip file you uploaded with CreateFunction
824
- # so you can download the .zip file. Note that the URL is valid for up
825
- # to 10 minutes. The configuration information is the same information
826
- # you provided as parameters when uploading the function.
827
- #
828
- # Using the optional `Qualifier` parameter, you can specify a specific
829
- # function version for which you want this information. If you don't
830
- # specify this parameter, the API uses unqualified function ARN which
831
- # return information about the `$LATEST` version of the Lambda function.
832
- # For more information, see [AWS Lambda Function Versioning and
833
- # Aliases][1].
834
- #
835
- # This operation requires permission for the `lambda:GetFunction`
836
- # action.
837
- #
838
- #
839
- #
840
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
841
- # @option params [required, String] :function_name
842
- # The Lambda function name.
843
- #
844
- # You can specify a function name (for example, `Thumbnail`) or you can
845
- # specify Amazon Resource Name (ARN) of the function (for example,
846
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
847
- # also allows you to specify a partial ARN (for example,
848
- # `account-id:Thumbnail`). Note that the length constraint applies only
849
- # to the ARN. If you specify only the function name, it is limited to 64
850
- # character in length.
851
- # @option params [String] :qualifier
852
- # Using this optional parameter to specify a function version or an
853
- # alias name. If you specify function version, the API uses qualified
854
- # function ARN for the request and returns information about the
855
- # specific Lambda function version. If you specify an alias name, the
856
- # API uses the alias ARN and returns information about the function
857
- # version to which the alias points. If you don't provide this
858
- # parameter, the API uses unqualified function ARN and returns
859
- # information about the `$LATEST` version of the Lambda function.
860
- # @return [Types::GetFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
861
- #
862
- # * {Types::GetFunctionResponse#configuration #Configuration} => Types::FunctionConfiguration
863
- # * {Types::GetFunctionResponse#code #Code} => Types::FunctionCodeLocation
864
- #
865
- # @example Request syntax with placeholder values
866
- # resp = client.get_function({
867
- # function_name: "FunctionName", # required
868
- # qualifier: "Qualifier",
869
- # })
870
- #
871
- # @example Response structure
872
- # resp.configuration.function_name #=> String
873
- # resp.configuration.function_arn #=> String
874
- # resp.configuration.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
875
- # resp.configuration.role #=> String
876
- # resp.configuration.handler #=> String
877
- # resp.configuration.code_size #=> Integer
878
- # resp.configuration.description #=> String
879
- # resp.configuration.timeout #=> Integer
880
- # resp.configuration.memory_size #=> Integer
881
- # resp.configuration.last_modified #=> Time
882
- # resp.configuration.code_sha_256 #=> String
883
- # resp.configuration.version #=> String
884
- # resp.configuration.vpc_config.subnet_ids #=> Array
885
- # resp.configuration.vpc_config.subnet_ids[0] #=> String
886
- # resp.configuration.vpc_config.security_group_ids #=> Array
887
- # resp.configuration.vpc_config.security_group_ids[0] #=> String
888
- # resp.configuration.vpc_config.vpc_id #=> String
889
- # resp.configuration.dead_letter_config.target_arn #=> String
890
- # resp.configuration.environment.variables #=> Hash
891
- # resp.configuration.environment.variables["EnvironmentVariableName"] #=> String
892
- # resp.configuration.environment.error.error_code #=> String
893
- # resp.configuration.environment.error.message #=> String
894
- # resp.configuration.kms_key_arn #=> String
895
- # resp.code.repository_type #=> String
896
- # resp.code.location #=> String
897
- # @overload get_function(params = {})
898
- # @param [Hash] params ({})
899
- def get_function(params = {}, options = {})
900
- req = build_request(:get_function, params)
901
- req.send_request(options)
902
- end
864
+ # Returns configuration information for the specified event source
865
+ # mapping (see CreateEventSourceMapping).
866
+ #
867
+ # This operation requires permission for the
868
+ # `lambda:GetEventSourceMapping` action.
869
+ #
870
+ # @option params [required, String] :uuid
871
+ # The AWS Lambda assigned ID of the event source mapping.
872
+ #
873
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
874
+ #
875
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
876
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
877
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
878
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
879
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
880
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
881
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
882
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
883
+ #
884
+ # @example Request syntax with placeholder values
885
+ #
886
+ # resp = client.get_event_source_mapping({
887
+ # uuid: "String", # required
888
+ # })
889
+ #
890
+ # @example Response structure
891
+ #
892
+ # resp.uuid #=> String
893
+ # resp.batch_size #=> Integer
894
+ # resp.event_source_arn #=> String
895
+ # resp.function_arn #=> String
896
+ # resp.last_modified #=> Time
897
+ # resp.last_processing_result #=> String
898
+ # resp.state #=> String
899
+ # resp.state_transition_reason #=> String
900
+ #
901
+ # @overload get_event_source_mapping(params = {})
902
+ # @param [Hash] params ({})
903
+ def get_event_source_mapping(params = {}, options = {})
904
+ req = build_request(:get_event_source_mapping, params)
905
+ req.send_request(options)
906
+ end
903
907
 
904
- # Returns the configuration information of the Lambda function. This the
905
- # same information you provided as parameters when uploading the
906
- # function by using CreateFunction.
907
- #
908
- # If you are using the versioning feature, you can retrieve this
909
- # information for a specific function version by using the optional
910
- # `Qualifier` parameter and specifying the function version or alias
911
- # that points to it. If you don't provide it, the API returns
912
- # information about the $LATEST version of the function. For more
913
- # information about versioning, see [AWS Lambda Function Versioning and
914
- # Aliases][1].
915
- #
916
- # This operation requires permission for the
917
- # `lambda:GetFunctionConfiguration` operation.
918
- #
919
- #
920
- #
921
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
922
- # @option params [required, String] :function_name
923
- # The name of the Lambda function for which you want to retrieve the
924
- # configuration information.
925
- #
926
- # You can specify a function name (for example, `Thumbnail`) or you can
927
- # specify Amazon Resource Name (ARN) of the function (for example,
928
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
929
- # also allows you to specify a partial ARN (for example,
930
- # `account-id:Thumbnail`). Note that the length constraint applies only
931
- # to the ARN. If you specify only the function name, it is limited to 64
932
- # character in length.
933
- # @option params [String] :qualifier
934
- # Using this optional parameter you can specify a function version or an
935
- # alias name. If you specify function version, the API uses qualified
936
- # function ARN and returns information about the specific function
937
- # version. If you specify an alias name, the API uses the alias ARN and
938
- # returns information about the function version to which the alias
939
- # points.
940
- #
941
- # If you don't specify this parameter, the API uses unqualified
942
- # function ARN, and returns information about the `$LATEST` function
943
- # version.
944
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
945
- #
946
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
947
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
948
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
949
- # * {Types::FunctionConfiguration#role #Role} => String
950
- # * {Types::FunctionConfiguration#handler #Handler} => String
951
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
952
- # * {Types::FunctionConfiguration#description #Description} => String
953
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
954
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
955
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
956
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
957
- # * {Types::FunctionConfiguration#version #Version} => String
958
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
959
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
960
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
961
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
962
- #
963
- # @example Request syntax with placeholder values
964
- # resp = client.get_function_configuration({
965
- # function_name: "FunctionName", # required
966
- # qualifier: "Qualifier",
967
- # })
968
- #
969
- # @example Response structure
970
- # resp.function_name #=> String
971
- # resp.function_arn #=> String
972
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
973
- # resp.role #=> String
974
- # resp.handler #=> String
975
- # resp.code_size #=> Integer
976
- # resp.description #=> String
977
- # resp.timeout #=> Integer
978
- # resp.memory_size #=> Integer
979
- # resp.last_modified #=> Time
980
- # resp.code_sha_256 #=> String
981
- # resp.version #=> String
982
- # resp.vpc_config.subnet_ids #=> Array
983
- # resp.vpc_config.subnet_ids[0] #=> String
984
- # resp.vpc_config.security_group_ids #=> Array
985
- # resp.vpc_config.security_group_ids[0] #=> String
986
- # resp.vpc_config.vpc_id #=> String
987
- # resp.dead_letter_config.target_arn #=> String
988
- # resp.environment.variables #=> Hash
989
- # resp.environment.variables["EnvironmentVariableName"] #=> String
990
- # resp.environment.error.error_code #=> String
991
- # resp.environment.error.message #=> String
992
- # resp.kms_key_arn #=> String
993
- # @overload get_function_configuration(params = {})
994
- # @param [Hash] params ({})
995
- def get_function_configuration(params = {}, options = {})
996
- req = build_request(:get_function_configuration, params)
997
- req.send_request(options)
998
- end
908
+ # Returns the configuration information of the Lambda function and a
909
+ # presigned URL link to the .zip file you uploaded with CreateFunction
910
+ # so you can download the .zip file. Note that the URL is valid for up
911
+ # to 10 minutes. The configuration information is the same information
912
+ # you provided as parameters when uploading the function.
913
+ #
914
+ # Using the optional `Qualifier` parameter, you can specify a specific
915
+ # function version for which you want this information. If you don't
916
+ # specify this parameter, the API uses unqualified function ARN which
917
+ # return information about the `$LATEST` version of the Lambda function.
918
+ # For more information, see [AWS Lambda Function Versioning and
919
+ # Aliases][1].
920
+ #
921
+ # This operation requires permission for the `lambda:GetFunction`
922
+ # action.
923
+ #
924
+ #
925
+ #
926
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
927
+ #
928
+ # @option params [required, String] :function_name
929
+ # The Lambda function name.
930
+ #
931
+ # You can specify a function name (for example, `Thumbnail`) or you can
932
+ # specify Amazon Resource Name (ARN) of the function (for example,
933
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
934
+ # also allows you to specify a partial ARN (for example,
935
+ # `account-id:Thumbnail`). Note that the length constraint applies only
936
+ # to the ARN. If you specify only the function name, it is limited to 64
937
+ # character in length.
938
+ #
939
+ # @option params [String] :qualifier
940
+ # Using this optional parameter to specify a function version or an
941
+ # alias name. If you specify function version, the API uses qualified
942
+ # function ARN for the request and returns information about the
943
+ # specific Lambda function version. If you specify an alias name, the
944
+ # API uses the alias ARN and returns information about the function
945
+ # version to which the alias points. If you don't provide this
946
+ # parameter, the API uses unqualified function ARN and returns
947
+ # information about the `$LATEST` version of the Lambda function.
948
+ #
949
+ # @return [Types::GetFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
950
+ #
951
+ # * {Types::GetFunctionResponse#configuration #configuration} => Types::FunctionConfiguration
952
+ # * {Types::GetFunctionResponse#code #code} => Types::FunctionCodeLocation
953
+ #
954
+ # @example Request syntax with placeholder values
955
+ #
956
+ # resp = client.get_function({
957
+ # function_name: "FunctionName", # required
958
+ # qualifier: "Qualifier",
959
+ # })
960
+ #
961
+ # @example Response structure
962
+ #
963
+ # resp.configuration.function_name #=> String
964
+ # resp.configuration.function_arn #=> String
965
+ # resp.configuration.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
966
+ # resp.configuration.role #=> String
967
+ # resp.configuration.handler #=> String
968
+ # resp.configuration.code_size #=> Integer
969
+ # resp.configuration.description #=> String
970
+ # resp.configuration.timeout #=> Integer
971
+ # resp.configuration.memory_size #=> Integer
972
+ # resp.configuration.last_modified #=> Time
973
+ # resp.configuration.code_sha_256 #=> String
974
+ # resp.configuration.version #=> String
975
+ # resp.configuration.vpc_config.subnet_ids #=> Array
976
+ # resp.configuration.vpc_config.subnet_ids[0] #=> String
977
+ # resp.configuration.vpc_config.security_group_ids #=> Array
978
+ # resp.configuration.vpc_config.security_group_ids[0] #=> String
979
+ # resp.configuration.vpc_config.vpc_id #=> String
980
+ # resp.configuration.dead_letter_config.target_arn #=> String
981
+ # resp.configuration.environment.variables #=> Hash
982
+ # resp.configuration.environment.variables["EnvironmentVariableName"] #=> String
983
+ # resp.configuration.environment.error.error_code #=> String
984
+ # resp.configuration.environment.error.message #=> String
985
+ # resp.configuration.kms_key_arn #=> String
986
+ # resp.code.repository_type #=> String
987
+ # resp.code.location #=> String
988
+ #
989
+ # @overload get_function(params = {})
990
+ # @param [Hash] params ({})
991
+ def get_function(params = {}, options = {})
992
+ req = build_request(:get_function, params)
993
+ req.send_request(options)
994
+ end
999
995
 
1000
- # Returns the resource policy associated with the specified Lambda
1001
- # function.
1002
- #
1003
- # If you are using the versioning feature, you can get the resource
1004
- # policy associated with the specific Lambda function version or alias
1005
- # by specifying the version or alias name using the `Qualifier`
1006
- # parameter. For more information about versioning, see [AWS Lambda
1007
- # Function Versioning and Aliases][1].
1008
- #
1009
- # For information about adding permissions, see AddPermission.
1010
- #
1011
- # You need permission for the `lambda:GetPolicy action.`
1012
- #
1013
- #
1014
- #
1015
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1016
- # @option params [required, String] :function_name
1017
- # Function name whose resource policy you want to retrieve.
1018
- #
1019
- # You can specify the function name (for example, `Thumbnail`) or you
1020
- # can specify Amazon Resource Name (ARN) of the function (for example,
1021
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1022
- # using versioning, you can also provide a qualified function ARN (ARN
1023
- # that is qualified with function version or alias name as suffix). AWS
1024
- # Lambda also allows you to specify only the function name with the
1025
- # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1026
- # the length constraint applies only to the ARN. If you specify only the
1027
- # function name, it is limited to 64 character in length.
1028
- # @option params [String] :qualifier
1029
- # You can specify this optional query parameter to specify a function
1030
- # version or an alias name in which case this API will return all
1031
- # permissions associated with the specific qualified ARN. If you don't
1032
- # provide this parameter, the API will return permissions that apply to
1033
- # the unqualified function ARN.
1034
- # @return [Types::GetPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1035
- #
1036
- # * {Types::GetPolicyResponse#policy #Policy} => String
1037
- #
1038
- # @example Request syntax with placeholder values
1039
- # resp = client.get_policy({
1040
- # function_name: "FunctionName", # required
1041
- # qualifier: "Qualifier",
1042
- # })
1043
- #
1044
- # @example Response structure
1045
- # resp.policy #=> String
1046
- # @overload get_policy(params = {})
1047
- # @param [Hash] params ({})
1048
- def get_policy(params = {}, options = {})
1049
- req = build_request(:get_policy, params)
1050
- req.send_request(options)
1051
- end
996
+ # Returns the configuration information of the Lambda function. This the
997
+ # same information you provided as parameters when uploading the
998
+ # function by using CreateFunction.
999
+ #
1000
+ # If you are using the versioning feature, you can retrieve this
1001
+ # information for a specific function version by using the optional
1002
+ # `Qualifier` parameter and specifying the function version or alias
1003
+ # that points to it. If you don't provide it, the API returns
1004
+ # information about the $LATEST version of the function. For more
1005
+ # information about versioning, see [AWS Lambda Function Versioning and
1006
+ # Aliases][1].
1007
+ #
1008
+ # This operation requires permission for the
1009
+ # `lambda:GetFunctionConfiguration` operation.
1010
+ #
1011
+ #
1012
+ #
1013
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1014
+ #
1015
+ # @option params [required, String] :function_name
1016
+ # The name of the Lambda function for which you want to retrieve the
1017
+ # configuration information.
1018
+ #
1019
+ # You can specify a function name (for example, `Thumbnail`) or you can
1020
+ # specify Amazon Resource Name (ARN) of the function (for example,
1021
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1022
+ # also allows you to specify a partial ARN (for example,
1023
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1024
+ # to the ARN. If you specify only the function name, it is limited to 64
1025
+ # character in length.
1026
+ #
1027
+ # @option params [String] :qualifier
1028
+ # Using this optional parameter you can specify a function version or an
1029
+ # alias name. If you specify function version, the API uses qualified
1030
+ # function ARN and returns information about the specific function
1031
+ # version. If you specify an alias name, the API uses the alias ARN and
1032
+ # returns information about the function version to which the alias
1033
+ # points.
1034
+ #
1035
+ # If you don't specify this parameter, the API uses unqualified
1036
+ # function ARN, and returns information about the `$LATEST` function
1037
+ # version.
1038
+ #
1039
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1040
+ #
1041
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
1042
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
1043
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
1044
+ # * {Types::FunctionConfiguration#role #role} => String
1045
+ # * {Types::FunctionConfiguration#handler #handler} => String
1046
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
1047
+ # * {Types::FunctionConfiguration#description #description} => String
1048
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
1049
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
1050
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
1051
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
1052
+ # * {Types::FunctionConfiguration#version #version} => String
1053
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
1054
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
1055
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
1056
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
1057
+ #
1058
+ # @example Request syntax with placeholder values
1059
+ #
1060
+ # resp = client.get_function_configuration({
1061
+ # function_name: "FunctionName", # required
1062
+ # qualifier: "Qualifier",
1063
+ # })
1064
+ #
1065
+ # @example Response structure
1066
+ #
1067
+ # resp.function_name #=> String
1068
+ # resp.function_arn #=> String
1069
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1070
+ # resp.role #=> String
1071
+ # resp.handler #=> String
1072
+ # resp.code_size #=> Integer
1073
+ # resp.description #=> String
1074
+ # resp.timeout #=> Integer
1075
+ # resp.memory_size #=> Integer
1076
+ # resp.last_modified #=> Time
1077
+ # resp.code_sha_256 #=> String
1078
+ # resp.version #=> String
1079
+ # resp.vpc_config.subnet_ids #=> Array
1080
+ # resp.vpc_config.subnet_ids[0] #=> String
1081
+ # resp.vpc_config.security_group_ids #=> Array
1082
+ # resp.vpc_config.security_group_ids[0] #=> String
1083
+ # resp.vpc_config.vpc_id #=> String
1084
+ # resp.dead_letter_config.target_arn #=> String
1085
+ # resp.environment.variables #=> Hash
1086
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
1087
+ # resp.environment.error.error_code #=> String
1088
+ # resp.environment.error.message #=> String
1089
+ # resp.kms_key_arn #=> String
1090
+ #
1091
+ # @overload get_function_configuration(params = {})
1092
+ # @param [Hash] params ({})
1093
+ def get_function_configuration(params = {}, options = {})
1094
+ req = build_request(:get_function_configuration, params)
1095
+ req.send_request(options)
1096
+ end
1052
1097
 
1053
- # Invokes a specific Lambda function. For an example, see [Create the
1054
- # Lambda Function and Test It Manually][1].
1055
- #
1056
- # If you are using the versioning feature, you can invoke the specific
1057
- # function version by providing function version or alias name that is
1058
- # pointing to the function version using the `Qualifier` parameter in
1059
- # the request. If you don't provide the `Qualifier` parameter, the
1060
- # `$LATEST` version of the Lambda function is invoked. Invocations occur
1061
- # at least once in response to an event and functions must be idempotent
1062
- # to handle this. For information about the versioning feature, see [AWS
1063
- # Lambda Function Versioning and Aliases][2].
1064
- #
1065
- # This operation requires permission for the `lambda:InvokeFunction`
1066
- # action.
1067
- #
1068
- #
1069
- #
1070
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/with-dynamodb-create-function.html#with-dbb-invoke-manually
1071
- # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1072
- # @option params [required, String] :function_name
1073
- # The Lambda function name.
1074
- #
1075
- # You can specify a function name (for example, `Thumbnail`) or you can
1076
- # specify Amazon Resource Name (ARN) of the function (for example,
1077
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1078
- # also allows you to specify a partial ARN (for example,
1079
- # `account-id:Thumbnail`). Note that the length constraint applies only
1080
- # to the ARN. If you specify only the function name, it is limited to 64
1081
- # character in length.
1082
- # @option params [String] :invocation_type
1083
- # By default, the `Invoke` API assumes `RequestResponse` invocation
1084
- # type. You can optionally request asynchronous execution by specifying
1085
- # `Event` as the `InvocationType`. You can also use this parameter to
1086
- # request AWS Lambda to not execute the function but do some
1087
- # verification, such as if the caller is authorized to invoke the
1088
- # function and if the inputs are valid. You request this by specifying
1089
- # `DryRun` as the `InvocationType`. This is useful in a cross-account
1090
- # scenario when you want to verify access to a function without running
1091
- # it.
1092
- # @option params [String] :log_type
1093
- # You can set this optional parameter to `Tail` in the request only if
1094
- # you specify the `InvocationType` parameter with value
1095
- # `RequestResponse`. In this case, AWS Lambda returns the base64-encoded
1096
- # last 4 KB of log data produced by your Lambda function in the
1097
- # `x-amz-log-result` header.
1098
- # @option params [String] :client_context
1099
- # Using the `ClientContext` you can pass client-specific information to
1100
- # the Lambda function you are invoking. You can then process the client
1101
- # information in your Lambda function as you choose through the context
1102
- # variable. For an example of a `ClientContext` JSON, see [PutEvents][1]
1103
- # in the *Amazon Mobile Analytics API Reference and User Guide*.
1104
- #
1105
- # The ClientContext JSON must be base64-encoded.
1106
- #
1107
- #
1108
- #
1109
- # [1]: http://docs.aws.amazon.com/mobileanalytics/latest/ug/PutEvents.html
1110
- # @option params [String, IO] :payload
1111
- # JSON that you want to provide to your Lambda function as input.
1112
- # @option params [String] :qualifier
1113
- # You can use this optional parameter to specify a Lambda function
1114
- # version or alias name. If you specify a function version, the API uses
1115
- # the qualified function ARN to invoke a specific Lambda function. If
1116
- # you specify an alias name, the API uses the alias ARN to invoke the
1117
- # Lambda function version to which the alias points.
1118
- #
1119
- # If you don't provide this parameter, then the API uses unqualified
1120
- # function ARN which results in invocation of the `$LATEST` version.
1121
- # @return [Types::InvocationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1122
- #
1123
- # * {Types::InvocationResponse#status_code #StatusCode} => Integer
1124
- # * {Types::InvocationResponse#function_error #FunctionError} => String
1125
- # * {Types::InvocationResponse#log_result #LogResult} => String
1126
- # * {Types::InvocationResponse#payload #Payload} => String
1127
- #
1128
- # @example Request syntax with placeholder values
1129
- # resp = client.invoke({
1130
- # function_name: "FunctionName", # required
1131
- # invocation_type: "Event", # accepts Event, RequestResponse, DryRun
1132
- # log_type: "None", # accepts None, Tail
1133
- # client_context: "String",
1134
- # payload: "data",
1135
- # qualifier: "Qualifier",
1136
- # })
1137
- #
1138
- # @example Response structure
1139
- # resp.status_code #=> Integer
1140
- # resp.function_error #=> String
1141
- # resp.log_result #=> String
1142
- # resp.payload #=> String
1143
- # @overload invoke(params = {})
1144
- # @param [Hash] params ({})
1145
- def invoke(params = {}, options = {})
1146
- req = build_request(:invoke, params)
1147
- req.send_request(options)
1148
- end
1098
+ # Returns the resource policy associated with the specified Lambda
1099
+ # function.
1100
+ #
1101
+ # If you are using the versioning feature, you can get the resource
1102
+ # policy associated with the specific Lambda function version or alias
1103
+ # by specifying the version or alias name using the `Qualifier`
1104
+ # parameter. For more information about versioning, see [AWS Lambda
1105
+ # Function Versioning and Aliases][1].
1106
+ #
1107
+ # For information about adding permissions, see AddPermission.
1108
+ #
1109
+ # You need permission for the `lambda:GetPolicy action.`
1110
+ #
1111
+ #
1112
+ #
1113
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1114
+ #
1115
+ # @option params [required, String] :function_name
1116
+ # Function name whose resource policy you want to retrieve.
1117
+ #
1118
+ # You can specify the function name (for example, `Thumbnail`) or you
1119
+ # can specify Amazon Resource Name (ARN) of the function (for example,
1120
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1121
+ # using versioning, you can also provide a qualified function ARN (ARN
1122
+ # that is qualified with function version or alias name as suffix). AWS
1123
+ # Lambda also allows you to specify only the function name with the
1124
+ # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1125
+ # the length constraint applies only to the ARN. If you specify only the
1126
+ # function name, it is limited to 64 character in length.
1127
+ #
1128
+ # @option params [String] :qualifier
1129
+ # You can specify this optional query parameter to specify a function
1130
+ # version or an alias name in which case this API will return all
1131
+ # permissions associated with the specific qualified ARN. If you don't
1132
+ # provide this parameter, the API will return permissions that apply to
1133
+ # the unqualified function ARN.
1134
+ #
1135
+ # @return [Types::GetPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1136
+ #
1137
+ # * {Types::GetPolicyResponse#policy #policy} => String
1138
+ #
1139
+ # @example Request syntax with placeholder values
1140
+ #
1141
+ # resp = client.get_policy({
1142
+ # function_name: "FunctionName", # required
1143
+ # qualifier: "Qualifier",
1144
+ # })
1145
+ #
1146
+ # @example Response structure
1147
+ #
1148
+ # resp.policy #=> String
1149
+ #
1150
+ # @overload get_policy(params = {})
1151
+ # @param [Hash] params ({})
1152
+ def get_policy(params = {}, options = {})
1153
+ req = build_request(:get_policy, params)
1154
+ req.send_request(options)
1155
+ end
1149
1156
 
1150
- # This API is deprecated. We recommend you use `Invoke` API (see
1151
- # Invoke).
1152
- #
1153
- # Submits an invocation request to AWS Lambda. Upon receiving the
1154
- # request, Lambda executes the specified function asynchronously. To see
1155
- # the logs generated by the Lambda function execution, see the
1156
- # CloudWatch Logs console.
1157
- #
1158
- # This operation requires permission for the `lambda:InvokeFunction`
1159
- # action.
1160
- # @option params [required, String] :function_name
1161
- # The Lambda function name.
1162
- # @option params [required, String, IO] :invoke_args
1163
- # JSON that you want to provide to your Lambda function as input.
1164
- # @return [Types::InvokeAsyncResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1165
- #
1166
- # * {Types::InvokeAsyncResponse#status #Status} => Integer
1167
- #
1168
- # @example Request syntax with placeholder values
1169
- # resp = client.invoke_async({
1170
- # function_name: "FunctionName", # required
1171
- # invoke_args: "data", # required
1172
- # })
1173
- #
1174
- # @example Response structure
1175
- # resp.status #=> Integer
1176
- # @overload invoke_async(params = {})
1177
- # @param [Hash] params ({})
1178
- def invoke_async(params = {}, options = {})
1179
- req = build_request(:invoke_async, params)
1180
- req.send_request(options)
1181
- end
1157
+ # Invokes a specific Lambda function. For an example, see [Create the
1158
+ # Lambda Function and Test It Manually][1].
1159
+ #
1160
+ # If you are using the versioning feature, you can invoke the specific
1161
+ # function version by providing function version or alias name that is
1162
+ # pointing to the function version using the `Qualifier` parameter in
1163
+ # the request. If you don't provide the `Qualifier` parameter, the
1164
+ # `$LATEST` version of the Lambda function is invoked. Invocations occur
1165
+ # at least once in response to an event and functions must be idempotent
1166
+ # to handle this. For information about the versioning feature, see [AWS
1167
+ # Lambda Function Versioning and Aliases][2].
1168
+ #
1169
+ # This operation requires permission for the `lambda:InvokeFunction`
1170
+ # action.
1171
+ #
1172
+ #
1173
+ #
1174
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/with-dynamodb-create-function.html#with-dbb-invoke-manually
1175
+ # [2]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1176
+ #
1177
+ # @option params [required, String] :function_name
1178
+ # The Lambda function name.
1179
+ #
1180
+ # You can specify a function name (for example, `Thumbnail`) or you can
1181
+ # specify Amazon Resource Name (ARN) of the function (for example,
1182
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1183
+ # also allows you to specify a partial ARN (for example,
1184
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1185
+ # to the ARN. If you specify only the function name, it is limited to 64
1186
+ # character in length.
1187
+ #
1188
+ # @option params [String] :invocation_type
1189
+ # By default, the `Invoke` API assumes `RequestResponse` invocation
1190
+ # type. You can optionally request asynchronous execution by specifying
1191
+ # `Event` as the `InvocationType`. You can also use this parameter to
1192
+ # request AWS Lambda to not execute the function but do some
1193
+ # verification, such as if the caller is authorized to invoke the
1194
+ # function and if the inputs are valid. You request this by specifying
1195
+ # `DryRun` as the `InvocationType`. This is useful in a cross-account
1196
+ # scenario when you want to verify access to a function without running
1197
+ # it.
1198
+ #
1199
+ # @option params [String] :log_type
1200
+ # You can set this optional parameter to `Tail` in the request only if
1201
+ # you specify the `InvocationType` parameter with value
1202
+ # `RequestResponse`. In this case, AWS Lambda returns the base64-encoded
1203
+ # last 4 KB of log data produced by your Lambda function in the
1204
+ # `x-amz-log-result` header.
1205
+ #
1206
+ # @option params [String] :client_context
1207
+ # Using the `ClientContext` you can pass client-specific information to
1208
+ # the Lambda function you are invoking. You can then process the client
1209
+ # information in your Lambda function as you choose through the context
1210
+ # variable. For an example of a `ClientContext` JSON, see [PutEvents][1]
1211
+ # in the *Amazon Mobile Analytics API Reference and User Guide*.
1212
+ #
1213
+ # The ClientContext JSON must be base64-encoded.
1214
+ #
1215
+ #
1216
+ #
1217
+ # [1]: http://docs.aws.amazon.com/mobileanalytics/latest/ug/PutEvents.html
1218
+ #
1219
+ # @option params [String, IO] :payload
1220
+ # JSON that you want to provide to your Lambda function as input.
1221
+ #
1222
+ # @option params [String] :qualifier
1223
+ # You can use this optional parameter to specify a Lambda function
1224
+ # version or alias name. If you specify a function version, the API uses
1225
+ # the qualified function ARN to invoke a specific Lambda function. If
1226
+ # you specify an alias name, the API uses the alias ARN to invoke the
1227
+ # Lambda function version to which the alias points.
1228
+ #
1229
+ # If you don't provide this parameter, then the API uses unqualified
1230
+ # function ARN which results in invocation of the `$LATEST` version.
1231
+ #
1232
+ # @return [Types::InvocationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1233
+ #
1234
+ # * {Types::InvocationResponse#status_code #status_code} => Integer
1235
+ # * {Types::InvocationResponse#function_error #function_error} => String
1236
+ # * {Types::InvocationResponse#log_result #log_result} => String
1237
+ # * {Types::InvocationResponse#payload #payload} => String
1238
+ #
1239
+ # @example Request syntax with placeholder values
1240
+ #
1241
+ # resp = client.invoke({
1242
+ # function_name: "FunctionName", # required
1243
+ # invocation_type: "Event", # accepts Event, RequestResponse, DryRun
1244
+ # log_type: "None", # accepts None, Tail
1245
+ # client_context: "String",
1246
+ # payload: "data",
1247
+ # qualifier: "Qualifier",
1248
+ # })
1249
+ #
1250
+ # @example Response structure
1251
+ #
1252
+ # resp.status_code #=> Integer
1253
+ # resp.function_error #=> String
1254
+ # resp.log_result #=> String
1255
+ # resp.payload #=> String
1256
+ #
1257
+ # @overload invoke(params = {})
1258
+ # @param [Hash] params ({})
1259
+ def invoke(params = {}, options = {})
1260
+ req = build_request(:invoke, params)
1261
+ req.send_request(options)
1262
+ end
1182
1263
 
1183
- # Returns list of aliases created for a Lambda function. For each alias,
1184
- # the response includes information such as the alias ARN, description,
1185
- # alias name, and the function version to which it points. For more
1186
- # information, see [Introduction to AWS Lambda Aliases][1].
1187
- #
1188
- # This requires permission for the lambda:ListAliases action.
1189
- #
1190
- #
1191
- #
1192
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1193
- # @option params [required, String] :function_name
1194
- # Lambda function name for which the alias is created.
1195
- # @option params [String] :function_version
1196
- # If you specify this optional parameter, the API returns only the
1197
- # aliases that are pointing to the specific Lambda function version,
1198
- # otherwise the API returns all of the aliases created for the Lambda
1199
- # function.
1200
- # @option params [String] :marker
1201
- # Optional string. An opaque pagination token returned from a previous
1202
- # `ListAliases` operation. If present, indicates where to continue the
1203
- # listing.
1204
- # @option params [Integer] :max_items
1205
- # Optional integer. Specifies the maximum number of aliases to return in
1206
- # response. This parameter value must be greater than 0.
1207
- # @return [Types::ListAliasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1208
- #
1209
- # * {Types::ListAliasesResponse#next_marker #NextMarker} => String
1210
- # * {Types::ListAliasesResponse#aliases #Aliases} => Array&lt;Types::AliasConfiguration&gt;
1211
- #
1212
- # @example Request syntax with placeholder values
1213
- # resp = client.list_aliases({
1214
- # function_name: "FunctionName", # required
1215
- # function_version: "Version",
1216
- # marker: "String",
1217
- # max_items: 1,
1218
- # })
1219
- #
1220
- # @example Response structure
1221
- # resp.next_marker #=> String
1222
- # resp.aliases #=> Array
1223
- # resp.aliases[0].alias_arn #=> String
1224
- # resp.aliases[0].name #=> String
1225
- # resp.aliases[0].function_version #=> String
1226
- # resp.aliases[0].description #=> String
1227
- # @overload list_aliases(params = {})
1228
- # @param [Hash] params ({})
1229
- def list_aliases(params = {}, options = {})
1230
- req = build_request(:list_aliases, params)
1231
- req.send_request(options)
1232
- end
1264
+ # This API is deprecated. We recommend you use `Invoke` API (see
1265
+ # Invoke).
1266
+ #
1267
+ # Submits an invocation request to AWS Lambda. Upon receiving the
1268
+ # request, Lambda executes the specified function asynchronously. To see
1269
+ # the logs generated by the Lambda function execution, see the
1270
+ # CloudWatch Logs console.
1271
+ #
1272
+ # This operation requires permission for the `lambda:InvokeFunction`
1273
+ # action.
1274
+ #
1275
+ # @option params [required, String] :function_name
1276
+ # The Lambda function name.
1277
+ #
1278
+ # @option params [required, String, IO] :invoke_args
1279
+ # JSON that you want to provide to your Lambda function as input.
1280
+ #
1281
+ # @return [Types::InvokeAsyncResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1282
+ #
1283
+ # * {Types::InvokeAsyncResponse#status #status} => Integer
1284
+ #
1285
+ # @example Request syntax with placeholder values
1286
+ #
1287
+ # resp = client.invoke_async({
1288
+ # function_name: "FunctionName", # required
1289
+ # invoke_args: "data", # required
1290
+ # })
1291
+ #
1292
+ # @example Response structure
1293
+ #
1294
+ # resp.status #=> Integer
1295
+ #
1296
+ # @overload invoke_async(params = {})
1297
+ # @param [Hash] params ({})
1298
+ def invoke_async(params = {}, options = {})
1299
+ req = build_request(:invoke_async, params)
1300
+ req.send_request(options)
1301
+ end
1233
1302
 
1234
- # Returns a list of event source mappings you created using the
1235
- # `CreateEventSourceMapping` (see CreateEventSourceMapping).
1236
- #
1237
- # For each mapping, the API returns configuration information. You can
1238
- # optionally specify filters to retrieve specific event source mappings.
1239
- #
1240
- # If you are using the versioning feature, you can get list of event
1241
- # source mappings for a specific Lambda function version or an alias as
1242
- # described in the `FunctionName` parameter. For information about the
1243
- # versioning feature, see [AWS Lambda Function Versioning and
1244
- # Aliases][1].
1245
- #
1246
- # This operation requires permission for the
1247
- # `lambda:ListEventSourceMappings` action.
1248
- #
1249
- #
1250
- #
1251
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1252
- # @option params [String] :event_source_arn
1253
- # The Amazon Resource Name (ARN) of the Amazon Kinesis stream. (This
1254
- # parameter is optional.)
1255
- # @option params [String] :function_name
1256
- # The name of the Lambda function.
1257
- #
1258
- # You can specify the function name (for example, `Thumbnail`) or you
1259
- # can specify Amazon Resource Name (ARN) of the function (for example,
1260
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1261
- # using versioning, you can also provide a qualified function ARN (ARN
1262
- # that is qualified with function version or alias name as suffix). AWS
1263
- # Lambda also allows you to specify only the function name with the
1264
- # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1265
- # the length constraint applies only to the ARN. If you specify only the
1266
- # function name, it is limited to 64 character in length.
1267
- # @option params [String] :marker
1268
- # Optional string. An opaque pagination token returned from a previous
1269
- # `ListEventSourceMappings` operation. If present, specifies to continue
1270
- # the list from where the returning call left off.
1271
- # @option params [Integer] :max_items
1272
- # Optional integer. Specifies the maximum number of event sources to
1273
- # return in response. This value must be greater than 0.
1274
- # @return [Types::ListEventSourceMappingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1275
- #
1276
- # * {Types::ListEventSourceMappingsResponse#next_marker #NextMarker} => String
1277
- # * {Types::ListEventSourceMappingsResponse#event_source_mappings #EventSourceMappings} => Array&lt;Types::EventSourceMappingConfiguration&gt;
1278
- #
1279
- # @example Request syntax with placeholder values
1280
- # resp = client.list_event_source_mappings({
1281
- # event_source_arn: "Arn",
1282
- # function_name: "FunctionName",
1283
- # marker: "String",
1284
- # max_items: 1,
1285
- # })
1286
- #
1287
- # @example Response structure
1288
- # resp.next_marker #=> String
1289
- # resp.event_source_mappings #=> Array
1290
- # resp.event_source_mappings[0].uuid #=> String
1291
- # resp.event_source_mappings[0].batch_size #=> Integer
1292
- # resp.event_source_mappings[0].event_source_arn #=> String
1293
- # resp.event_source_mappings[0].function_arn #=> String
1294
- # resp.event_source_mappings[0].last_modified #=> Time
1295
- # resp.event_source_mappings[0].last_processing_result #=> String
1296
- # resp.event_source_mappings[0].state #=> String
1297
- # resp.event_source_mappings[0].state_transition_reason #=> String
1298
- # @overload list_event_source_mappings(params = {})
1299
- # @param [Hash] params ({})
1300
- def list_event_source_mappings(params = {}, options = {})
1301
- req = build_request(:list_event_source_mappings, params)
1302
- req.send_request(options)
1303
- end
1303
+ # Returns list of aliases created for a Lambda function. For each alias,
1304
+ # the response includes information such as the alias ARN, description,
1305
+ # alias name, and the function version to which it points. For more
1306
+ # information, see [Introduction to AWS Lambda Aliases][1].
1307
+ #
1308
+ # This requires permission for the lambda:ListAliases action.
1309
+ #
1310
+ #
1311
+ #
1312
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1313
+ #
1314
+ # @option params [required, String] :function_name
1315
+ # Lambda function name for which the alias is created.
1316
+ #
1317
+ # @option params [String] :function_version
1318
+ # If you specify this optional parameter, the API returns only the
1319
+ # aliases that are pointing to the specific Lambda function version,
1320
+ # otherwise the API returns all of the aliases created for the Lambda
1321
+ # function.
1322
+ #
1323
+ # @option params [String] :marker
1324
+ # Optional string. An opaque pagination token returned from a previous
1325
+ # `ListAliases` operation. If present, indicates where to continue the
1326
+ # listing.
1327
+ #
1328
+ # @option params [Integer] :max_items
1329
+ # Optional integer. Specifies the maximum number of aliases to return in
1330
+ # response. This parameter value must be greater than 0.
1331
+ #
1332
+ # @return [Types::ListAliasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1333
+ #
1334
+ # * {Types::ListAliasesResponse#next_marker #next_marker} => String
1335
+ # * {Types::ListAliasesResponse#aliases #aliases} => Array&lt;Types::AliasConfiguration&gt;
1336
+ #
1337
+ # @example Request syntax with placeholder values
1338
+ #
1339
+ # resp = client.list_aliases({
1340
+ # function_name: "FunctionName", # required
1341
+ # function_version: "Version",
1342
+ # marker: "String",
1343
+ # max_items: 1,
1344
+ # })
1345
+ #
1346
+ # @example Response structure
1347
+ #
1348
+ # resp.next_marker #=> String
1349
+ # resp.aliases #=> Array
1350
+ # resp.aliases[0].alias_arn #=> String
1351
+ # resp.aliases[0].name #=> String
1352
+ # resp.aliases[0].function_version #=> String
1353
+ # resp.aliases[0].description #=> String
1354
+ #
1355
+ # @overload list_aliases(params = {})
1356
+ # @param [Hash] params ({})
1357
+ def list_aliases(params = {}, options = {})
1358
+ req = build_request(:list_aliases, params)
1359
+ req.send_request(options)
1360
+ end
1304
1361
 
1305
- # Returns a list of your Lambda functions. For each function, the
1306
- # response includes the function configuration information. You must use
1307
- # GetFunction to retrieve the code for your function.
1308
- #
1309
- # This operation requires permission for the `lambda:ListFunctions`
1310
- # action.
1311
- #
1312
- # If you are using versioning feature, the response returns list of
1313
- # $LATEST versions of your functions. For information about the
1314
- # versioning feature, see [AWS Lambda Function Versioning and
1315
- # Aliases][1].
1316
- #
1317
- #
1318
- #
1319
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1320
- # @option params [String] :marker
1321
- # Optional string. An opaque pagination token returned from a previous
1322
- # `ListFunctions` operation. If present, indicates where to continue the
1323
- # listing.
1324
- # @option params [Integer] :max_items
1325
- # Optional integer. Specifies the maximum number of AWS Lambda functions
1326
- # to return in response. This parameter value must be greater than 0.
1327
- # @return [Types::ListFunctionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1328
- #
1329
- # * {Types::ListFunctionsResponse#next_marker #NextMarker} => String
1330
- # * {Types::ListFunctionsResponse#functions #Functions} => Array&lt;Types::FunctionConfiguration&gt;
1331
- #
1332
- # @example Request syntax with placeholder values
1333
- # resp = client.list_functions({
1334
- # marker: "String",
1335
- # max_items: 1,
1336
- # })
1337
- #
1338
- # @example Response structure
1339
- # resp.next_marker #=> String
1340
- # resp.functions #=> Array
1341
- # resp.functions[0].function_name #=> String
1342
- # resp.functions[0].function_arn #=> String
1343
- # resp.functions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1344
- # resp.functions[0].role #=> String
1345
- # resp.functions[0].handler #=> String
1346
- # resp.functions[0].code_size #=> Integer
1347
- # resp.functions[0].description #=> String
1348
- # resp.functions[0].timeout #=> Integer
1349
- # resp.functions[0].memory_size #=> Integer
1350
- # resp.functions[0].last_modified #=> Time
1351
- # resp.functions[0].code_sha_256 #=> String
1352
- # resp.functions[0].version #=> String
1353
- # resp.functions[0].vpc_config.subnet_ids #=> Array
1354
- # resp.functions[0].vpc_config.subnet_ids[0] #=> String
1355
- # resp.functions[0].vpc_config.security_group_ids #=> Array
1356
- # resp.functions[0].vpc_config.security_group_ids[0] #=> String
1357
- # resp.functions[0].vpc_config.vpc_id #=> String
1358
- # resp.functions[0].dead_letter_config.target_arn #=> String
1359
- # resp.functions[0].environment.variables #=> Hash
1360
- # resp.functions[0].environment.variables["EnvironmentVariableName"] #=> String
1361
- # resp.functions[0].environment.error.error_code #=> String
1362
- # resp.functions[0].environment.error.message #=> String
1363
- # resp.functions[0].kms_key_arn #=> String
1364
- # @overload list_functions(params = {})
1365
- # @param [Hash] params ({})
1366
- def list_functions(params = {}, options = {})
1367
- req = build_request(:list_functions, params)
1368
- req.send_request(options)
1369
- end
1362
+ # Returns a list of event source mappings you created using the
1363
+ # `CreateEventSourceMapping` (see CreateEventSourceMapping).
1364
+ #
1365
+ # For each mapping, the API returns configuration information. You can
1366
+ # optionally specify filters to retrieve specific event source mappings.
1367
+ #
1368
+ # If you are using the versioning feature, you can get list of event
1369
+ # source mappings for a specific Lambda function version or an alias as
1370
+ # described in the `FunctionName` parameter. For information about the
1371
+ # versioning feature, see [AWS Lambda Function Versioning and
1372
+ # Aliases][1].
1373
+ #
1374
+ # This operation requires permission for the
1375
+ # `lambda:ListEventSourceMappings` action.
1376
+ #
1377
+ #
1378
+ #
1379
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1380
+ #
1381
+ # @option params [String] :event_source_arn
1382
+ # The Amazon Resource Name (ARN) of the Amazon Kinesis stream. (This
1383
+ # parameter is optional.)
1384
+ #
1385
+ # @option params [String] :function_name
1386
+ # The name of the Lambda function.
1387
+ #
1388
+ # You can specify the function name (for example, `Thumbnail`) or you
1389
+ # can specify Amazon Resource Name (ARN) of the function (for example,
1390
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). If you are
1391
+ # using versioning, you can also provide a qualified function ARN (ARN
1392
+ # that is qualified with function version or alias name as suffix). AWS
1393
+ # Lambda also allows you to specify only the function name with the
1394
+ # account ID qualifier (for example, `account-id:Thumbnail`). Note that
1395
+ # the length constraint applies only to the ARN. If you specify only the
1396
+ # function name, it is limited to 64 character in length.
1397
+ #
1398
+ # @option params [String] :marker
1399
+ # Optional string. An opaque pagination token returned from a previous
1400
+ # `ListEventSourceMappings` operation. If present, specifies to continue
1401
+ # the list from where the returning call left off.
1402
+ #
1403
+ # @option params [Integer] :max_items
1404
+ # Optional integer. Specifies the maximum number of event sources to
1405
+ # return in response. This value must be greater than 0.
1406
+ #
1407
+ # @return [Types::ListEventSourceMappingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1408
+ #
1409
+ # * {Types::ListEventSourceMappingsResponse#next_marker #next_marker} => String
1410
+ # * {Types::ListEventSourceMappingsResponse#event_source_mappings #event_source_mappings} => Array&lt;Types::EventSourceMappingConfiguration&gt;
1411
+ #
1412
+ # @example Request syntax with placeholder values
1413
+ #
1414
+ # resp = client.list_event_source_mappings({
1415
+ # event_source_arn: "Arn",
1416
+ # function_name: "FunctionName",
1417
+ # marker: "String",
1418
+ # max_items: 1,
1419
+ # })
1420
+ #
1421
+ # @example Response structure
1422
+ #
1423
+ # resp.next_marker #=> String
1424
+ # resp.event_source_mappings #=> Array
1425
+ # resp.event_source_mappings[0].uuid #=> String
1426
+ # resp.event_source_mappings[0].batch_size #=> Integer
1427
+ # resp.event_source_mappings[0].event_source_arn #=> String
1428
+ # resp.event_source_mappings[0].function_arn #=> String
1429
+ # resp.event_source_mappings[0].last_modified #=> Time
1430
+ # resp.event_source_mappings[0].last_processing_result #=> String
1431
+ # resp.event_source_mappings[0].state #=> String
1432
+ # resp.event_source_mappings[0].state_transition_reason #=> String
1433
+ #
1434
+ # @overload list_event_source_mappings(params = {})
1435
+ # @param [Hash] params ({})
1436
+ def list_event_source_mappings(params = {}, options = {})
1437
+ req = build_request(:list_event_source_mappings, params)
1438
+ req.send_request(options)
1439
+ end
1370
1440
 
1371
- # List all versions of a function. For information about the versioning
1372
- # feature, see [AWS Lambda Function Versioning and Aliases][1].
1373
- #
1374
- #
1375
- #
1376
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1377
- # @option params [required, String] :function_name
1378
- # Function name whose versions to list. You can specify a function name
1379
- # (for example, `Thumbnail`) or you can specify Amazon Resource Name
1380
- # (ARN) of the function (for example,
1381
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1382
- # also allows you to specify a partial ARN (for example,
1383
- # `account-id:Thumbnail`). Note that the length constraint applies only
1384
- # to the ARN. If you specify only the function name, it is limited to 64
1385
- # character in length.
1386
- # @option params [String] :marker
1387
- # Optional string. An opaque pagination token returned from a previous
1388
- # `ListVersionsByFunction` operation. If present, indicates where to
1389
- # continue the listing.
1390
- # @option params [Integer] :max_items
1391
- # Optional integer. Specifies the maximum number of AWS Lambda function
1392
- # versions to return in response. This parameter value must be greater
1393
- # than 0.
1394
- # @return [Types::ListVersionsByFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1395
- #
1396
- # * {Types::ListVersionsByFunctionResponse#next_marker #NextMarker} => String
1397
- # * {Types::ListVersionsByFunctionResponse#versions #Versions} => Array&lt;Types::FunctionConfiguration&gt;
1398
- #
1399
- # @example Request syntax with placeholder values
1400
- # resp = client.list_versions_by_function({
1401
- # function_name: "FunctionName", # required
1402
- # marker: "String",
1403
- # max_items: 1,
1404
- # })
1405
- #
1406
- # @example Response structure
1407
- # resp.next_marker #=> String
1408
- # resp.versions #=> Array
1409
- # resp.versions[0].function_name #=> String
1410
- # resp.versions[0].function_arn #=> String
1411
- # resp.versions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1412
- # resp.versions[0].role #=> String
1413
- # resp.versions[0].handler #=> String
1414
- # resp.versions[0].code_size #=> Integer
1415
- # resp.versions[0].description #=> String
1416
- # resp.versions[0].timeout #=> Integer
1417
- # resp.versions[0].memory_size #=> Integer
1418
- # resp.versions[0].last_modified #=> Time
1419
- # resp.versions[0].code_sha_256 #=> String
1420
- # resp.versions[0].version #=> String
1421
- # resp.versions[0].vpc_config.subnet_ids #=> Array
1422
- # resp.versions[0].vpc_config.subnet_ids[0] #=> String
1423
- # resp.versions[0].vpc_config.security_group_ids #=> Array
1424
- # resp.versions[0].vpc_config.security_group_ids[0] #=> String
1425
- # resp.versions[0].vpc_config.vpc_id #=> String
1426
- # resp.versions[0].dead_letter_config.target_arn #=> String
1427
- # resp.versions[0].environment.variables #=> Hash
1428
- # resp.versions[0].environment.variables["EnvironmentVariableName"] #=> String
1429
- # resp.versions[0].environment.error.error_code #=> String
1430
- # resp.versions[0].environment.error.message #=> String
1431
- # resp.versions[0].kms_key_arn #=> String
1432
- # @overload list_versions_by_function(params = {})
1433
- # @param [Hash] params ({})
1434
- def list_versions_by_function(params = {}, options = {})
1435
- req = build_request(:list_versions_by_function, params)
1436
- req.send_request(options)
1437
- end
1441
+ # Returns a list of your Lambda functions. For each function, the
1442
+ # response includes the function configuration information. You must use
1443
+ # GetFunction to retrieve the code for your function.
1444
+ #
1445
+ # This operation requires permission for the `lambda:ListFunctions`
1446
+ # action.
1447
+ #
1448
+ # If you are using versioning feature, the response returns list of
1449
+ # $LATEST versions of your functions. For information about the
1450
+ # versioning feature, see [AWS Lambda Function Versioning and
1451
+ # Aliases][1].
1452
+ #
1453
+ #
1454
+ #
1455
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1456
+ #
1457
+ # @option params [String] :marker
1458
+ # Optional string. An opaque pagination token returned from a previous
1459
+ # `ListFunctions` operation. If present, indicates where to continue the
1460
+ # listing.
1461
+ #
1462
+ # @option params [Integer] :max_items
1463
+ # Optional integer. Specifies the maximum number of AWS Lambda functions
1464
+ # to return in response. This parameter value must be greater than 0.
1465
+ #
1466
+ # @return [Types::ListFunctionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1467
+ #
1468
+ # * {Types::ListFunctionsResponse#next_marker #next_marker} => String
1469
+ # * {Types::ListFunctionsResponse#functions #functions} => Array&lt;Types::FunctionConfiguration&gt;
1470
+ #
1471
+ # @example Request syntax with placeholder values
1472
+ #
1473
+ # resp = client.list_functions({
1474
+ # marker: "String",
1475
+ # max_items: 1,
1476
+ # })
1477
+ #
1478
+ # @example Response structure
1479
+ #
1480
+ # resp.next_marker #=> String
1481
+ # resp.functions #=> Array
1482
+ # resp.functions[0].function_name #=> String
1483
+ # resp.functions[0].function_arn #=> String
1484
+ # resp.functions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1485
+ # resp.functions[0].role #=> String
1486
+ # resp.functions[0].handler #=> String
1487
+ # resp.functions[0].code_size #=> Integer
1488
+ # resp.functions[0].description #=> String
1489
+ # resp.functions[0].timeout #=> Integer
1490
+ # resp.functions[0].memory_size #=> Integer
1491
+ # resp.functions[0].last_modified #=> Time
1492
+ # resp.functions[0].code_sha_256 #=> String
1493
+ # resp.functions[0].version #=> String
1494
+ # resp.functions[0].vpc_config.subnet_ids #=> Array
1495
+ # resp.functions[0].vpc_config.subnet_ids[0] #=> String
1496
+ # resp.functions[0].vpc_config.security_group_ids #=> Array
1497
+ # resp.functions[0].vpc_config.security_group_ids[0] #=> String
1498
+ # resp.functions[0].vpc_config.vpc_id #=> String
1499
+ # resp.functions[0].dead_letter_config.target_arn #=> String
1500
+ # resp.functions[0].environment.variables #=> Hash
1501
+ # resp.functions[0].environment.variables["EnvironmentVariableName"] #=> String
1502
+ # resp.functions[0].environment.error.error_code #=> String
1503
+ # resp.functions[0].environment.error.message #=> String
1504
+ # resp.functions[0].kms_key_arn #=> String
1505
+ #
1506
+ # @overload list_functions(params = {})
1507
+ # @param [Hash] params ({})
1508
+ def list_functions(params = {}, options = {})
1509
+ req = build_request(:list_functions, params)
1510
+ req.send_request(options)
1511
+ end
1438
1512
 
1439
- # Publishes a version of your function from the current snapshot of
1440
- # $LATEST. That is, AWS Lambda takes a snapshot of the function code and
1441
- # configuration information from $LATEST and publishes a new version.
1442
- # The code and configuration cannot be modified after publication. For
1443
- # information about the versioning feature, see [AWS Lambda Function
1444
- # Versioning and Aliases][1].
1445
- #
1446
- #
1447
- #
1448
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1449
- # @option params [required, String] :function_name
1450
- # The Lambda function name. You can specify a function name (for
1451
- # example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of
1452
- # the function (for example,
1453
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1454
- # also allows you to specify a partial ARN (for example,
1455
- # `account-id:Thumbnail`). Note that the length constraint applies only
1456
- # to the ARN. If you specify only the function name, it is limited to 64
1457
- # character in length.
1458
- # @option params [String] :code_sha_256
1459
- # The SHA256 hash of the deployment package you want to publish. This
1460
- # provides validation on the code you are publishing. If you provide
1461
- # this parameter value must match the SHA256 of the $LATEST version for
1462
- # the publication to succeed.
1463
- # @option params [String] :description
1464
- # The description for the version you are publishing. If not provided,
1465
- # AWS Lambda copies the description from the $LATEST version.
1466
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1467
- #
1468
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
1469
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
1470
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
1471
- # * {Types::FunctionConfiguration#role #Role} => String
1472
- # * {Types::FunctionConfiguration#handler #Handler} => String
1473
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
1474
- # * {Types::FunctionConfiguration#description #Description} => String
1475
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
1476
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
1477
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
1478
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
1479
- # * {Types::FunctionConfiguration#version #Version} => String
1480
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
1481
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
1482
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
1483
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
1484
- #
1485
- # @example Request syntax with placeholder values
1486
- # resp = client.publish_version({
1487
- # function_name: "FunctionName", # required
1488
- # code_sha_256: "String",
1489
- # description: "Description",
1490
- # })
1491
- #
1492
- # @example Response structure
1493
- # resp.function_name #=> String
1494
- # resp.function_arn #=> String
1495
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1496
- # resp.role #=> String
1497
- # resp.handler #=> String
1498
- # resp.code_size #=> Integer
1499
- # resp.description #=> String
1500
- # resp.timeout #=> Integer
1501
- # resp.memory_size #=> Integer
1502
- # resp.last_modified #=> Time
1503
- # resp.code_sha_256 #=> String
1504
- # resp.version #=> String
1505
- # resp.vpc_config.subnet_ids #=> Array
1506
- # resp.vpc_config.subnet_ids[0] #=> String
1507
- # resp.vpc_config.security_group_ids #=> Array
1508
- # resp.vpc_config.security_group_ids[0] #=> String
1509
- # resp.vpc_config.vpc_id #=> String
1510
- # resp.dead_letter_config.target_arn #=> String
1511
- # resp.environment.variables #=> Hash
1512
- # resp.environment.variables["EnvironmentVariableName"] #=> String
1513
- # resp.environment.error.error_code #=> String
1514
- # resp.environment.error.message #=> String
1515
- # resp.kms_key_arn #=> String
1516
- # @overload publish_version(params = {})
1517
- # @param [Hash] params ({})
1518
- def publish_version(params = {}, options = {})
1519
- req = build_request(:publish_version, params)
1520
- req.send_request(options)
1521
- end
1513
+ # List all versions of a function. For information about the versioning
1514
+ # feature, see [AWS Lambda Function Versioning and Aliases][1].
1515
+ #
1516
+ #
1517
+ #
1518
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1519
+ #
1520
+ # @option params [required, String] :function_name
1521
+ # Function name whose versions to list. You can specify a function name
1522
+ # (for example, `Thumbnail`) or you can specify Amazon Resource Name
1523
+ # (ARN) of the function (for example,
1524
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1525
+ # also allows you to specify a partial ARN (for example,
1526
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1527
+ # to the ARN. If you specify only the function name, it is limited to 64
1528
+ # character in length.
1529
+ #
1530
+ # @option params [String] :marker
1531
+ # Optional string. An opaque pagination token returned from a previous
1532
+ # `ListVersionsByFunction` operation. If present, indicates where to
1533
+ # continue the listing.
1534
+ #
1535
+ # @option params [Integer] :max_items
1536
+ # Optional integer. Specifies the maximum number of AWS Lambda function
1537
+ # versions to return in response. This parameter value must be greater
1538
+ # than 0.
1539
+ #
1540
+ # @return [Types::ListVersionsByFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1541
+ #
1542
+ # * {Types::ListVersionsByFunctionResponse#next_marker #next_marker} => String
1543
+ # * {Types::ListVersionsByFunctionResponse#versions #versions} => Array&lt;Types::FunctionConfiguration&gt;
1544
+ #
1545
+ # @example Request syntax with placeholder values
1546
+ #
1547
+ # resp = client.list_versions_by_function({
1548
+ # function_name: "FunctionName", # required
1549
+ # marker: "String",
1550
+ # max_items: 1,
1551
+ # })
1552
+ #
1553
+ # @example Response structure
1554
+ #
1555
+ # resp.next_marker #=> String
1556
+ # resp.versions #=> Array
1557
+ # resp.versions[0].function_name #=> String
1558
+ # resp.versions[0].function_arn #=> String
1559
+ # resp.versions[0].runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1560
+ # resp.versions[0].role #=> String
1561
+ # resp.versions[0].handler #=> String
1562
+ # resp.versions[0].code_size #=> Integer
1563
+ # resp.versions[0].description #=> String
1564
+ # resp.versions[0].timeout #=> Integer
1565
+ # resp.versions[0].memory_size #=> Integer
1566
+ # resp.versions[0].last_modified #=> Time
1567
+ # resp.versions[0].code_sha_256 #=> String
1568
+ # resp.versions[0].version #=> String
1569
+ # resp.versions[0].vpc_config.subnet_ids #=> Array
1570
+ # resp.versions[0].vpc_config.subnet_ids[0] #=> String
1571
+ # resp.versions[0].vpc_config.security_group_ids #=> Array
1572
+ # resp.versions[0].vpc_config.security_group_ids[0] #=> String
1573
+ # resp.versions[0].vpc_config.vpc_id #=> String
1574
+ # resp.versions[0].dead_letter_config.target_arn #=> String
1575
+ # resp.versions[0].environment.variables #=> Hash
1576
+ # resp.versions[0].environment.variables["EnvironmentVariableName"] #=> String
1577
+ # resp.versions[0].environment.error.error_code #=> String
1578
+ # resp.versions[0].environment.error.message #=> String
1579
+ # resp.versions[0].kms_key_arn #=> String
1580
+ #
1581
+ # @overload list_versions_by_function(params = {})
1582
+ # @param [Hash] params ({})
1583
+ def list_versions_by_function(params = {}, options = {})
1584
+ req = build_request(:list_versions_by_function, params)
1585
+ req.send_request(options)
1586
+ end
1522
1587
 
1523
- # You can remove individual permissions from an resource policy
1524
- # associated with a Lambda function by providing a statement ID that you
1525
- # provided when you added the permission.
1526
- #
1527
- # If you are using versioning, the permissions you remove are specific
1528
- # to the Lambda function version or alias you specify in the
1529
- # `AddPermission` request via the `Qualifier` parameter. For more
1530
- # information about versioning, see [AWS Lambda Function Versioning and
1531
- # Aliases][1].
1532
- #
1533
- # Note that removal of a permission will cause an active event source to
1534
- # lose permission to the function.
1535
- #
1536
- # You need permission for the `lambda:RemovePermission` action.
1537
- #
1538
- #
1539
- #
1540
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1541
- # @option params [required, String] :function_name
1542
- # Lambda function whose resource policy you want to remove a permission
1543
- # from.
1544
- #
1545
- # You can specify a function name (for example, `Thumbnail`) or you can
1546
- # specify Amazon Resource Name (ARN) of the function (for example,
1547
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1548
- # also allows you to specify a partial ARN (for example,
1549
- # `account-id:Thumbnail`). Note that the length constraint applies only
1550
- # to the ARN. If you specify only the function name, it is limited to 64
1551
- # character in length.
1552
- # @option params [required, String] :statement_id
1553
- # Statement ID of the permission to remove.
1554
- # @option params [String] :qualifier
1555
- # You can specify this optional parameter to remove permission
1556
- # associated with a specific function version or function alias. If you
1557
- # don't specify this parameter, the API removes permission associated
1558
- # with the unqualified function ARN.
1559
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1560
- #
1561
- # @example Request syntax with placeholder values
1562
- # resp = client.remove_permission({
1563
- # function_name: "FunctionName", # required
1564
- # statement_id: "StatementId", # required
1565
- # qualifier: "Qualifier",
1566
- # })
1567
- # @overload remove_permission(params = {})
1568
- # @param [Hash] params ({})
1569
- def remove_permission(params = {}, options = {})
1570
- req = build_request(:remove_permission, params)
1571
- req.send_request(options)
1572
- end
1588
+ # Publishes a version of your function from the current snapshot of
1589
+ # $LATEST. That is, AWS Lambda takes a snapshot of the function code and
1590
+ # configuration information from $LATEST and publishes a new version.
1591
+ # The code and configuration cannot be modified after publication. For
1592
+ # information about the versioning feature, see [AWS Lambda Function
1593
+ # Versioning and Aliases][1].
1594
+ #
1595
+ #
1596
+ #
1597
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1598
+ #
1599
+ # @option params [required, String] :function_name
1600
+ # The Lambda function name. You can specify a function name (for
1601
+ # example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of
1602
+ # the function (for example,
1603
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1604
+ # also allows you to specify a partial ARN (for example,
1605
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1606
+ # to the ARN. If you specify only the function name, it is limited to 64
1607
+ # character in length.
1608
+ #
1609
+ # @option params [String] :code_sha_256
1610
+ # The SHA256 hash of the deployment package you want to publish. This
1611
+ # provides validation on the code you are publishing. If you provide
1612
+ # this parameter value must match the SHA256 of the $LATEST version for
1613
+ # the publication to succeed.
1614
+ #
1615
+ # @option params [String] :description
1616
+ # The description for the version you are publishing. If not provided,
1617
+ # AWS Lambda copies the description from the $LATEST version.
1618
+ #
1619
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1620
+ #
1621
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
1622
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
1623
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
1624
+ # * {Types::FunctionConfiguration#role #role} => String
1625
+ # * {Types::FunctionConfiguration#handler #handler} => String
1626
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
1627
+ # * {Types::FunctionConfiguration#description #description} => String
1628
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
1629
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
1630
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
1631
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
1632
+ # * {Types::FunctionConfiguration#version #version} => String
1633
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
1634
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
1635
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
1636
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
1637
+ #
1638
+ # @example Request syntax with placeholder values
1639
+ #
1640
+ # resp = client.publish_version({
1641
+ # function_name: "FunctionName", # required
1642
+ # code_sha_256: "String",
1643
+ # description: "Description",
1644
+ # })
1645
+ #
1646
+ # @example Response structure
1647
+ #
1648
+ # resp.function_name #=> String
1649
+ # resp.function_arn #=> String
1650
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1651
+ # resp.role #=> String
1652
+ # resp.handler #=> String
1653
+ # resp.code_size #=> Integer
1654
+ # resp.description #=> String
1655
+ # resp.timeout #=> Integer
1656
+ # resp.memory_size #=> Integer
1657
+ # resp.last_modified #=> Time
1658
+ # resp.code_sha_256 #=> String
1659
+ # resp.version #=> String
1660
+ # resp.vpc_config.subnet_ids #=> Array
1661
+ # resp.vpc_config.subnet_ids[0] #=> String
1662
+ # resp.vpc_config.security_group_ids #=> Array
1663
+ # resp.vpc_config.security_group_ids[0] #=> String
1664
+ # resp.vpc_config.vpc_id #=> String
1665
+ # resp.dead_letter_config.target_arn #=> String
1666
+ # resp.environment.variables #=> Hash
1667
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
1668
+ # resp.environment.error.error_code #=> String
1669
+ # resp.environment.error.message #=> String
1670
+ # resp.kms_key_arn #=> String
1671
+ #
1672
+ # @overload publish_version(params = {})
1673
+ # @param [Hash] params ({})
1674
+ def publish_version(params = {}, options = {})
1675
+ req = build_request(:publish_version, params)
1676
+ req.send_request(options)
1677
+ end
1573
1678
 
1574
- # Using this API you can update the function version to which the alias
1575
- # points and the alias description. For more information, see
1576
- # [Introduction to AWS Lambda Aliases][1].
1577
- #
1578
- # This requires permission for the lambda:UpdateAlias action.
1579
- #
1580
- #
1581
- #
1582
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1583
- # @option params [required, String] :function_name
1584
- # The function name for which the alias is created.
1585
- # @option params [required, String] :name
1586
- # The alias name.
1587
- # @option params [String] :function_version
1588
- # Using this parameter you can change the Lambda function version to
1589
- # which the alias points.
1590
- # @option params [String] :description
1591
- # You can change the description of the alias using this parameter.
1592
- # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1593
- #
1594
- # * {Types::AliasConfiguration#alias_arn #AliasArn} => String
1595
- # * {Types::AliasConfiguration#name #Name} => String
1596
- # * {Types::AliasConfiguration#function_version #FunctionVersion} => String
1597
- # * {Types::AliasConfiguration#description #Description} => String
1598
- #
1599
- # @example Request syntax with placeholder values
1600
- # resp = client.update_alias({
1601
- # function_name: "FunctionName", # required
1602
- # name: "Alias", # required
1603
- # function_version: "Version",
1604
- # description: "Description",
1605
- # })
1606
- #
1607
- # @example Response structure
1608
- # resp.alias_arn #=> String
1609
- # resp.name #=> String
1610
- # resp.function_version #=> String
1611
- # resp.description #=> String
1612
- # @overload update_alias(params = {})
1613
- # @param [Hash] params ({})
1614
- def update_alias(params = {}, options = {})
1615
- req = build_request(:update_alias, params)
1616
- req.send_request(options)
1617
- end
1679
+ # You can remove individual permissions from an resource policy
1680
+ # associated with a Lambda function by providing a statement ID that you
1681
+ # provided when you added the permission.
1682
+ #
1683
+ # If you are using versioning, the permissions you remove are specific
1684
+ # to the Lambda function version or alias you specify in the
1685
+ # `AddPermission` request via the `Qualifier` parameter. For more
1686
+ # information about versioning, see [AWS Lambda Function Versioning and
1687
+ # Aliases][1].
1688
+ #
1689
+ # Note that removal of a permission will cause an active event source to
1690
+ # lose permission to the function.
1691
+ #
1692
+ # You need permission for the `lambda:RemovePermission` action.
1693
+ #
1694
+ #
1695
+ #
1696
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1697
+ #
1698
+ # @option params [required, String] :function_name
1699
+ # Lambda function whose resource policy you want to remove a permission
1700
+ # from.
1701
+ #
1702
+ # You can specify a function name (for example, `Thumbnail`) or you can
1703
+ # specify Amazon Resource Name (ARN) of the function (for example,
1704
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1705
+ # also allows you to specify a partial ARN (for example,
1706
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1707
+ # to the ARN. If you specify only the function name, it is limited to 64
1708
+ # character in length.
1709
+ #
1710
+ # @option params [required, String] :statement_id
1711
+ # Statement ID of the permission to remove.
1712
+ #
1713
+ # @option params [String] :qualifier
1714
+ # You can specify this optional parameter to remove permission
1715
+ # associated with a specific function version or function alias. If you
1716
+ # don't specify this parameter, the API removes permission associated
1717
+ # with the unqualified function ARN.
1718
+ #
1719
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1720
+ #
1721
+ # @example Request syntax with placeholder values
1722
+ #
1723
+ # resp = client.remove_permission({
1724
+ # function_name: "FunctionName", # required
1725
+ # statement_id: "StatementId", # required
1726
+ # qualifier: "Qualifier",
1727
+ # })
1728
+ #
1729
+ # @overload remove_permission(params = {})
1730
+ # @param [Hash] params ({})
1731
+ def remove_permission(params = {}, options = {})
1732
+ req = build_request(:remove_permission, params)
1733
+ req.send_request(options)
1734
+ end
1618
1735
 
1619
- # You can update an event source mapping. This is useful if you want to
1620
- # change the parameters of the existing mapping without losing your
1621
- # position in the stream. You can change which function will receive the
1622
- # stream records, but to change the stream itself, you must create a new
1623
- # mapping.
1624
- #
1625
- # If you are using the versioning feature, you can update the event
1626
- # source mapping to map to a specific Lambda function version or alias
1627
- # as described in the `FunctionName` parameter. For information about
1628
- # the versioning feature, see [AWS Lambda Function Versioning and
1629
- # Aliases][1].
1630
- #
1631
- # If you disable the event source mapping, AWS Lambda stops polling. If
1632
- # you enable again, it will resume polling from the time it had stopped
1633
- # polling, so you don't lose processing of any records. However, if you
1634
- # delete event source mapping and create it again, it will reset.
1635
- #
1636
- # This operation requires permission for the
1637
- # `lambda:UpdateEventSourceMapping` action.
1638
- #
1639
- #
1640
- #
1641
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1642
- # @option params [required, String] :uuid
1643
- # The event source mapping identifier.
1644
- # @option params [String] :function_name
1645
- # The Lambda function to which you want the stream records sent.
1646
- #
1647
- # You can specify a function name (for example, `Thumbnail`) or you can
1648
- # specify Amazon Resource Name (ARN) of the function (for example,
1649
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1650
- # also allows you to specify a partial ARN (for example,
1651
- # `account-id:Thumbnail`).
1652
- #
1653
- # If you are using versioning, you can also provide a qualified function
1654
- # ARN (ARN that is qualified with function version or alias name as
1655
- # suffix). For more information about versioning, see [AWS Lambda
1656
- # Function Versioning and Aliases][1]
1657
- #
1658
- # Note that the length constraint applies only to the ARN. If you
1659
- # specify only the function name, it is limited to 64 character in
1660
- # length.
1661
- #
1662
- #
1663
- #
1664
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1665
- # @option params [Boolean] :enabled
1666
- # Specifies whether AWS Lambda should actively poll the stream or not.
1667
- # If disabled, AWS Lambda will not poll the stream.
1668
- # @option params [Integer] :batch_size
1669
- # The maximum number of stream records that can be sent to your Lambda
1670
- # function for a single invocation.
1671
- # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1672
- #
1673
- # * {Types::EventSourceMappingConfiguration#uuid #UUID} => String
1674
- # * {Types::EventSourceMappingConfiguration#batch_size #BatchSize} => Integer
1675
- # * {Types::EventSourceMappingConfiguration#event_source_arn #EventSourceArn} => String
1676
- # * {Types::EventSourceMappingConfiguration#function_arn #FunctionArn} => String
1677
- # * {Types::EventSourceMappingConfiguration#last_modified #LastModified} => Time
1678
- # * {Types::EventSourceMappingConfiguration#last_processing_result #LastProcessingResult} => String
1679
- # * {Types::EventSourceMappingConfiguration#state #State} => String
1680
- # * {Types::EventSourceMappingConfiguration#state_transition_reason #StateTransitionReason} => String
1681
- #
1682
- # @example Request syntax with placeholder values
1683
- # resp = client.update_event_source_mapping({
1684
- # uuid: "String", # required
1685
- # function_name: "FunctionName",
1686
- # enabled: false,
1687
- # batch_size: 1,
1688
- # })
1689
- #
1690
- # @example Response structure
1691
- # resp.uuid #=> String
1692
- # resp.batch_size #=> Integer
1693
- # resp.event_source_arn #=> String
1694
- # resp.function_arn #=> String
1695
- # resp.last_modified #=> Time
1696
- # resp.last_processing_result #=> String
1697
- # resp.state #=> String
1698
- # resp.state_transition_reason #=> String
1699
- # @overload update_event_source_mapping(params = {})
1700
- # @param [Hash] params ({})
1701
- def update_event_source_mapping(params = {}, options = {})
1702
- req = build_request(:update_event_source_mapping, params)
1703
- req.send_request(options)
1704
- end
1736
+ # Using this API you can update the function version to which the alias
1737
+ # points and the alias description. For more information, see
1738
+ # [Introduction to AWS Lambda Aliases][1].
1739
+ #
1740
+ # This requires permission for the lambda:UpdateAlias action.
1741
+ #
1742
+ #
1743
+ #
1744
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/aliases-intro.html
1745
+ #
1746
+ # @option params [required, String] :function_name
1747
+ # The function name for which the alias is created.
1748
+ #
1749
+ # @option params [required, String] :name
1750
+ # The alias name.
1751
+ #
1752
+ # @option params [String] :function_version
1753
+ # Using this parameter you can change the Lambda function version to
1754
+ # which the alias points.
1755
+ #
1756
+ # @option params [String] :description
1757
+ # You can change the description of the alias using this parameter.
1758
+ #
1759
+ # @return [Types::AliasConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1760
+ #
1761
+ # * {Types::AliasConfiguration#alias_arn #alias_arn} => String
1762
+ # * {Types::AliasConfiguration#name #name} => String
1763
+ # * {Types::AliasConfiguration#function_version #function_version} => String
1764
+ # * {Types::AliasConfiguration#description #description} => String
1765
+ #
1766
+ # @example Request syntax with placeholder values
1767
+ #
1768
+ # resp = client.update_alias({
1769
+ # function_name: "FunctionName", # required
1770
+ # name: "Alias", # required
1771
+ # function_version: "Version",
1772
+ # description: "Description",
1773
+ # })
1774
+ #
1775
+ # @example Response structure
1776
+ #
1777
+ # resp.alias_arn #=> String
1778
+ # resp.name #=> String
1779
+ # resp.function_version #=> String
1780
+ # resp.description #=> String
1781
+ #
1782
+ # @overload update_alias(params = {})
1783
+ # @param [Hash] params ({})
1784
+ def update_alias(params = {}, options = {})
1785
+ req = build_request(:update_alias, params)
1786
+ req.send_request(options)
1787
+ end
1705
1788
 
1706
- # Updates the code for the specified Lambda function. This operation
1707
- # must only be used on an existing Lambda function and cannot be used to
1708
- # update the function configuration.
1709
- #
1710
- # If you are using the versioning feature, note this API will always
1711
- # update the $LATEST version of your Lambda function. For information
1712
- # about the versioning feature, see [AWS Lambda Function Versioning and
1713
- # Aliases][1].
1714
- #
1715
- # This operation requires permission for the `lambda:UpdateFunctionCode`
1716
- # action.
1717
- #
1718
- #
1719
- #
1720
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1721
- # @option params [required, String] :function_name
1722
- # The existing Lambda function name whose code you want to replace.
1723
- #
1724
- # You can specify a function name (for example, `Thumbnail`) or you can
1725
- # specify Amazon Resource Name (ARN) of the function (for example,
1726
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1727
- # also allows you to specify a partial ARN (for example,
1728
- # `account-id:Thumbnail`). Note that the length constraint applies only
1729
- # to the ARN. If you specify only the function name, it is limited to 64
1730
- # character in length.
1731
- # @option params [String, IO] :zip_file
1732
- # The contents of your zip file containing your deployment package. If
1733
- # you are using the web API directly, the contents of the zip file must
1734
- # be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the
1735
- # SDKs or CLI will do the encoding for you. For more information about
1736
- # creating a .zip file, go to [Execution Permissions][1] in the *AWS
1737
- # Lambda Developer Guide*.
1738
- #
1739
- #
1740
- #
1741
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html
1742
- # @option params [String] :s3_bucket
1743
- # Amazon S3 bucket name where the .zip file containing your deployment
1744
- # package is stored. This bucket must reside in the same AWS region
1745
- # where you are creating the Lambda function.
1746
- # @option params [String] :s3_key
1747
- # The Amazon S3 object (the deployment package) key name you want to
1748
- # upload.
1749
- # @option params [String] :s3_object_version
1750
- # The Amazon S3 object (the deployment package) version you want to
1751
- # upload.
1752
- # @option params [Boolean] :publish
1753
- # This boolean parameter can be used to request AWS Lambda to update the
1754
- # Lambda function and publish a version as an atomic operation.
1755
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1756
- #
1757
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
1758
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
1759
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
1760
- # * {Types::FunctionConfiguration#role #Role} => String
1761
- # * {Types::FunctionConfiguration#handler #Handler} => String
1762
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
1763
- # * {Types::FunctionConfiguration#description #Description} => String
1764
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
1765
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
1766
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
1767
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
1768
- # * {Types::FunctionConfiguration#version #Version} => String
1769
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
1770
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
1771
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
1772
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
1773
- #
1774
- # @example Request syntax with placeholder values
1775
- # resp = client.update_function_code({
1776
- # function_name: "FunctionName", # required
1777
- # zip_file: "data",
1778
- # s3_bucket: "S3Bucket",
1779
- # s3_key: "S3Key",
1780
- # s3_object_version: "S3ObjectVersion",
1781
- # publish: false,
1782
- # })
1783
- #
1784
- # @example Response structure
1785
- # resp.function_name #=> String
1786
- # resp.function_arn #=> String
1787
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1788
- # resp.role #=> String
1789
- # resp.handler #=> String
1790
- # resp.code_size #=> Integer
1791
- # resp.description #=> String
1792
- # resp.timeout #=> Integer
1793
- # resp.memory_size #=> Integer
1794
- # resp.last_modified #=> Time
1795
- # resp.code_sha_256 #=> String
1796
- # resp.version #=> String
1797
- # resp.vpc_config.subnet_ids #=> Array
1798
- # resp.vpc_config.subnet_ids[0] #=> String
1799
- # resp.vpc_config.security_group_ids #=> Array
1800
- # resp.vpc_config.security_group_ids[0] #=> String
1801
- # resp.vpc_config.vpc_id #=> String
1802
- # resp.dead_letter_config.target_arn #=> String
1803
- # resp.environment.variables #=> Hash
1804
- # resp.environment.variables["EnvironmentVariableName"] #=> String
1805
- # resp.environment.error.error_code #=> String
1806
- # resp.environment.error.message #=> String
1807
- # resp.kms_key_arn #=> String
1808
- # @overload update_function_code(params = {})
1809
- # @param [Hash] params ({})
1810
- def update_function_code(params = {}, options = {})
1811
- req = build_request(:update_function_code, params)
1812
- req.send_request(options)
1813
- end
1789
+ # You can update an event source mapping. This is useful if you want to
1790
+ # change the parameters of the existing mapping without losing your
1791
+ # position in the stream. You can change which function will receive the
1792
+ # stream records, but to change the stream itself, you must create a new
1793
+ # mapping.
1794
+ #
1795
+ # If you are using the versioning feature, you can update the event
1796
+ # source mapping to map to a specific Lambda function version or alias
1797
+ # as described in the `FunctionName` parameter. For information about
1798
+ # the versioning feature, see [AWS Lambda Function Versioning and
1799
+ # Aliases][1].
1800
+ #
1801
+ # If you disable the event source mapping, AWS Lambda stops polling. If
1802
+ # you enable again, it will resume polling from the time it had stopped
1803
+ # polling, so you don't lose processing of any records. However, if you
1804
+ # delete event source mapping and create it again, it will reset.
1805
+ #
1806
+ # This operation requires permission for the
1807
+ # `lambda:UpdateEventSourceMapping` action.
1808
+ #
1809
+ #
1810
+ #
1811
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1812
+ #
1813
+ # @option params [required, String] :uuid
1814
+ # The event source mapping identifier.
1815
+ #
1816
+ # @option params [String] :function_name
1817
+ # The Lambda function to which you want the stream records sent.
1818
+ #
1819
+ # You can specify a function name (for example, `Thumbnail`) or you can
1820
+ # specify Amazon Resource Name (ARN) of the function (for example,
1821
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1822
+ # also allows you to specify a partial ARN (for example,
1823
+ # `account-id:Thumbnail`).
1824
+ #
1825
+ # If you are using versioning, you can also provide a qualified function
1826
+ # ARN (ARN that is qualified with function version or alias name as
1827
+ # suffix). For more information about versioning, see [AWS Lambda
1828
+ # Function Versioning and Aliases][1]
1829
+ #
1830
+ # Note that the length constraint applies only to the ARN. If you
1831
+ # specify only the function name, it is limited to 64 character in
1832
+ # length.
1833
+ #
1834
+ #
1835
+ #
1836
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1837
+ #
1838
+ # @option params [Boolean] :enabled
1839
+ # Specifies whether AWS Lambda should actively poll the stream or not.
1840
+ # If disabled, AWS Lambda will not poll the stream.
1841
+ #
1842
+ # @option params [Integer] :batch_size
1843
+ # The maximum number of stream records that can be sent to your Lambda
1844
+ # function for a single invocation.
1845
+ #
1846
+ # @return [Types::EventSourceMappingConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1847
+ #
1848
+ # * {Types::EventSourceMappingConfiguration#uuid #uuid} => String
1849
+ # * {Types::EventSourceMappingConfiguration#batch_size #batch_size} => Integer
1850
+ # * {Types::EventSourceMappingConfiguration#event_source_arn #event_source_arn} => String
1851
+ # * {Types::EventSourceMappingConfiguration#function_arn #function_arn} => String
1852
+ # * {Types::EventSourceMappingConfiguration#last_modified #last_modified} => Time
1853
+ # * {Types::EventSourceMappingConfiguration#last_processing_result #last_processing_result} => String
1854
+ # * {Types::EventSourceMappingConfiguration#state #state} => String
1855
+ # * {Types::EventSourceMappingConfiguration#state_transition_reason #state_transition_reason} => String
1856
+ #
1857
+ # @example Request syntax with placeholder values
1858
+ #
1859
+ # resp = client.update_event_source_mapping({
1860
+ # uuid: "String", # required
1861
+ # function_name: "FunctionName",
1862
+ # enabled: false,
1863
+ # batch_size: 1,
1864
+ # })
1865
+ #
1866
+ # @example Response structure
1867
+ #
1868
+ # resp.uuid #=> String
1869
+ # resp.batch_size #=> Integer
1870
+ # resp.event_source_arn #=> String
1871
+ # resp.function_arn #=> String
1872
+ # resp.last_modified #=> Time
1873
+ # resp.last_processing_result #=> String
1874
+ # resp.state #=> String
1875
+ # resp.state_transition_reason #=> String
1876
+ #
1877
+ # @overload update_event_source_mapping(params = {})
1878
+ # @param [Hash] params ({})
1879
+ def update_event_source_mapping(params = {}, options = {})
1880
+ req = build_request(:update_event_source_mapping, params)
1881
+ req.send_request(options)
1882
+ end
1814
1883
 
1815
- # Updates the configuration parameters for the specified Lambda function
1816
- # by using the values provided in the request. You provide only the
1817
- # parameters you want to change. This operation must only be used on an
1818
- # existing Lambda function and cannot be used to update the function's
1819
- # code.
1820
- #
1821
- # If you are using the versioning feature, note this API will always
1822
- # update the $LATEST version of your Lambda function. For information
1823
- # about the versioning feature, see [AWS Lambda Function Versioning and
1824
- # Aliases][1].
1825
- #
1826
- # This operation requires permission for the
1827
- # `lambda:UpdateFunctionConfiguration` action.
1828
- #
1829
- #
1830
- #
1831
- # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1832
- # @option params [required, String] :function_name
1833
- # The name of the Lambda function.
1834
- #
1835
- # You can specify a function name (for example, `Thumbnail`) or you can
1836
- # specify Amazon Resource Name (ARN) of the function (for example,
1837
- # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1838
- # also allows you to specify a partial ARN (for example,
1839
- # `account-id:Thumbnail`). Note that the length constraint applies only
1840
- # to the ARN. If you specify only the function name, it is limited to 64
1841
- # character in length.
1842
- # @option params [String] :role
1843
- # The Amazon Resource Name (ARN) of the IAM role that Lambda will assume
1844
- # when it executes your function.
1845
- # @option params [String] :handler
1846
- # The function that Lambda calls to begin executing your function. For
1847
- # Node.js, it is the `module-name.export` value in your function.
1848
- # @option params [String] :description
1849
- # A short user-defined function description. AWS Lambda does not use
1850
- # this value. Assign a meaningful description as you see fit.
1851
- # @option params [Integer] :timeout
1852
- # The function execution time at which AWS Lambda should terminate the
1853
- # function. Because the execution time has cost implications, we
1854
- # recommend you set this value based on your expected execution time.
1855
- # The default is 3 seconds.
1856
- # @option params [Integer] :memory_size
1857
- # The amount of memory, in MB, your Lambda function is given. AWS Lambda
1858
- # uses this memory size to infer the amount of CPU allocated to your
1859
- # function. Your function use-case determines your CPU and memory
1860
- # requirements. For example, a database operation might need less memory
1861
- # compared to an image processing function. The default value is 128 MB.
1862
- # The value must be a multiple of 64 MB.
1863
- # @option params [Types::VpcConfig] :vpc_config
1864
- # If your Lambda function accesses resources in a VPC, you provide this
1865
- # parameter identifying the list of security group IDs and subnet IDs.
1866
- # These must belong to the same VPC. You must provide at least one
1867
- # security group and one subnet ID.
1868
- # @option params [Types::Environment] :environment
1869
- # The parent object that contains your environment's configuration
1870
- # settings.
1871
- # @option params [String] :runtime
1872
- # The runtime environment for the Lambda function.
1873
- #
1874
- # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
1875
- # use earlier runtime (v0.10.42), set the value to "nodejs".
1876
- #
1877
- # <note markdown="1"> You can no longer downgrade to the v0.10.42 runtime version. This
1878
- # version will no longer be supported as of early 2017.
1879
- #
1880
- # </note>
1881
- # @option params [Types::DeadLetterConfig] :dead_letter_config
1882
- # The parent object that contains the target ARN (Amazon Resource Name)
1883
- # of an Amazon SQS queue or Amazon SNS topic.
1884
- # @option params [String] :kms_key_arn
1885
- # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
1886
- # function's environment variables. If you elect to use the AWS Lambda
1887
- # default service key, pass in an empty string ("") for this
1888
- # parameter.
1889
- # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1890
- #
1891
- # * {Types::FunctionConfiguration#function_name #FunctionName} => String
1892
- # * {Types::FunctionConfiguration#function_arn #FunctionArn} => String
1893
- # * {Types::FunctionConfiguration#runtime #Runtime} => String
1894
- # * {Types::FunctionConfiguration#role #Role} => String
1895
- # * {Types::FunctionConfiguration#handler #Handler} => String
1896
- # * {Types::FunctionConfiguration#code_size #CodeSize} => Integer
1897
- # * {Types::FunctionConfiguration#description #Description} => String
1898
- # * {Types::FunctionConfiguration#timeout #Timeout} => Integer
1899
- # * {Types::FunctionConfiguration#memory_size #MemorySize} => Integer
1900
- # * {Types::FunctionConfiguration#last_modified #LastModified} => Time
1901
- # * {Types::FunctionConfiguration#code_sha_256 #CodeSha256} => String
1902
- # * {Types::FunctionConfiguration#version #Version} => String
1903
- # * {Types::FunctionConfiguration#vpc_config #VpcConfig} => Types::VpcConfigResponse
1904
- # * {Types::FunctionConfiguration#dead_letter_config #DeadLetterConfig} => Types::DeadLetterConfig
1905
- # * {Types::FunctionConfiguration#environment #Environment} => Types::EnvironmentResponse
1906
- # * {Types::FunctionConfiguration#kms_key_arn #KMSKeyArn} => String
1907
- #
1908
- # @example Request syntax with placeholder values
1909
- # resp = client.update_function_configuration({
1910
- # function_name: "FunctionName", # required
1911
- # role: "RoleArn",
1912
- # handler: "Handler",
1913
- # description: "Description",
1914
- # timeout: 1,
1915
- # memory_size: 1,
1916
- # vpc_config: {
1917
- # subnet_ids: ["SubnetId"],
1918
- # security_group_ids: ["SecurityGroupId"],
1919
- # },
1920
- # environment: {
1921
- # variables: {
1922
- # "EnvironmentVariableName" => "EnvironmentVariableValue",
1923
- # },
1924
- # },
1925
- # runtime: "nodejs", # accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
1926
- # dead_letter_config: {
1927
- # target_arn: "ResourceArn",
1928
- # },
1929
- # kms_key_arn: "KMSKeyArn",
1930
- # })
1931
- #
1932
- # @example Response structure
1933
- # resp.function_name #=> String
1934
- # resp.function_arn #=> String
1935
- # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1936
- # resp.role #=> String
1937
- # resp.handler #=> String
1938
- # resp.code_size #=> Integer
1939
- # resp.description #=> String
1940
- # resp.timeout #=> Integer
1941
- # resp.memory_size #=> Integer
1942
- # resp.last_modified #=> Time
1943
- # resp.code_sha_256 #=> String
1944
- # resp.version #=> String
1945
- # resp.vpc_config.subnet_ids #=> Array
1946
- # resp.vpc_config.subnet_ids[0] #=> String
1947
- # resp.vpc_config.security_group_ids #=> Array
1948
- # resp.vpc_config.security_group_ids[0] #=> String
1949
- # resp.vpc_config.vpc_id #=> String
1950
- # resp.dead_letter_config.target_arn #=> String
1951
- # resp.environment.variables #=> Hash
1952
- # resp.environment.variables["EnvironmentVariableName"] #=> String
1953
- # resp.environment.error.error_code #=> String
1954
- # resp.environment.error.message #=> String
1955
- # resp.kms_key_arn #=> String
1956
- # @overload update_function_configuration(params = {})
1957
- # @param [Hash] params ({})
1958
- def update_function_configuration(params = {}, options = {})
1959
- req = build_request(:update_function_configuration, params)
1960
- req.send_request(options)
1961
- end
1884
+ # Updates the code for the specified Lambda function. This operation
1885
+ # must only be used on an existing Lambda function and cannot be used to
1886
+ # update the function configuration.
1887
+ #
1888
+ # If you are using the versioning feature, note this API will always
1889
+ # update the $LATEST version of your Lambda function. For information
1890
+ # about the versioning feature, see [AWS Lambda Function Versioning and
1891
+ # Aliases][1].
1892
+ #
1893
+ # This operation requires permission for the `lambda:UpdateFunctionCode`
1894
+ # action.
1895
+ #
1896
+ #
1897
+ #
1898
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
1899
+ #
1900
+ # @option params [required, String] :function_name
1901
+ # The existing Lambda function name whose code you want to replace.
1902
+ #
1903
+ # You can specify a function name (for example, `Thumbnail`) or you can
1904
+ # specify Amazon Resource Name (ARN) of the function (for example,
1905
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
1906
+ # also allows you to specify a partial ARN (for example,
1907
+ # `account-id:Thumbnail`). Note that the length constraint applies only
1908
+ # to the ARN. If you specify only the function name, it is limited to 64
1909
+ # character in length.
1910
+ #
1911
+ # @option params [String, IO] :zip_file
1912
+ # The contents of your zip file containing your deployment package. If
1913
+ # you are using the web API directly, the contents of the zip file must
1914
+ # be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the
1915
+ # SDKs or CLI will do the encoding for you. For more information about
1916
+ # creating a .zip file, see [Execution Permissions][1] in the *AWS
1917
+ # Lambda Developer Guide*.
1918
+ #
1919
+ #
1920
+ #
1921
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role.html
1922
+ #
1923
+ # @option params [String] :s3_bucket
1924
+ # Amazon S3 bucket name where the .zip file containing your deployment
1925
+ # package is stored. This bucket must reside in the same AWS Region
1926
+ # where you are creating the Lambda function.
1927
+ #
1928
+ # @option params [String] :s3_key
1929
+ # The Amazon S3 object (the deployment package) key name you want to
1930
+ # upload.
1931
+ #
1932
+ # @option params [String] :s3_object_version
1933
+ # The Amazon S3 object (the deployment package) version you want to
1934
+ # upload.
1935
+ #
1936
+ # @option params [Boolean] :publish
1937
+ # This boolean parameter can be used to request AWS Lambda to update the
1938
+ # Lambda function and publish a version as an atomic operation.
1939
+ #
1940
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1941
+ #
1942
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
1943
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
1944
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
1945
+ # * {Types::FunctionConfiguration#role #role} => String
1946
+ # * {Types::FunctionConfiguration#handler #handler} => String
1947
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
1948
+ # * {Types::FunctionConfiguration#description #description} => String
1949
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
1950
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
1951
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
1952
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
1953
+ # * {Types::FunctionConfiguration#version #version} => String
1954
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
1955
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
1956
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
1957
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
1958
+ #
1959
+ # @example Request syntax with placeholder values
1960
+ #
1961
+ # resp = client.update_function_code({
1962
+ # function_name: "FunctionName", # required
1963
+ # zip_file: "data",
1964
+ # s3_bucket: "S3Bucket",
1965
+ # s3_key: "S3Key",
1966
+ # s3_object_version: "S3ObjectVersion",
1967
+ # publish: false,
1968
+ # })
1969
+ #
1970
+ # @example Response structure
1971
+ #
1972
+ # resp.function_name #=> String
1973
+ # resp.function_arn #=> String
1974
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
1975
+ # resp.role #=> String
1976
+ # resp.handler #=> String
1977
+ # resp.code_size #=> Integer
1978
+ # resp.description #=> String
1979
+ # resp.timeout #=> Integer
1980
+ # resp.memory_size #=> Integer
1981
+ # resp.last_modified #=> Time
1982
+ # resp.code_sha_256 #=> String
1983
+ # resp.version #=> String
1984
+ # resp.vpc_config.subnet_ids #=> Array
1985
+ # resp.vpc_config.subnet_ids[0] #=> String
1986
+ # resp.vpc_config.security_group_ids #=> Array
1987
+ # resp.vpc_config.security_group_ids[0] #=> String
1988
+ # resp.vpc_config.vpc_id #=> String
1989
+ # resp.dead_letter_config.target_arn #=> String
1990
+ # resp.environment.variables #=> Hash
1991
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
1992
+ # resp.environment.error.error_code #=> String
1993
+ # resp.environment.error.message #=> String
1994
+ # resp.kms_key_arn #=> String
1995
+ #
1996
+ # @overload update_function_code(params = {})
1997
+ # @param [Hash] params ({})
1998
+ def update_function_code(params = {}, options = {})
1999
+ req = build_request(:update_function_code, params)
2000
+ req.send_request(options)
2001
+ end
1962
2002
 
1963
- # @!endgroup
2003
+ # Updates the configuration parameters for the specified Lambda function
2004
+ # by using the values provided in the request. You provide only the
2005
+ # parameters you want to change. This operation must only be used on an
2006
+ # existing Lambda function and cannot be used to update the function's
2007
+ # code.
2008
+ #
2009
+ # If you are using the versioning feature, note this API will always
2010
+ # update the $LATEST version of your Lambda function. For information
2011
+ # about the versioning feature, see [AWS Lambda Function Versioning and
2012
+ # Aliases][1].
2013
+ #
2014
+ # This operation requires permission for the
2015
+ # `lambda:UpdateFunctionConfiguration` action.
2016
+ #
2017
+ #
2018
+ #
2019
+ # [1]: http://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html
2020
+ #
2021
+ # @option params [required, String] :function_name
2022
+ # The name of the Lambda function.
2023
+ #
2024
+ # You can specify a function name (for example, `Thumbnail`) or you can
2025
+ # specify Amazon Resource Name (ARN) of the function (for example,
2026
+ # `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda
2027
+ # also allows you to specify a partial ARN (for example,
2028
+ # `account-id:Thumbnail`). Note that the length constraint applies only
2029
+ # to the ARN. If you specify only the function name, it is limited to 64
2030
+ # character in length.
2031
+ #
2032
+ # @option params [String] :role
2033
+ # The Amazon Resource Name (ARN) of the IAM role that Lambda will assume
2034
+ # when it executes your function.
2035
+ #
2036
+ # @option params [String] :handler
2037
+ # The function that Lambda calls to begin executing your function. For
2038
+ # Node.js, it is the `module-name.export` value in your function.
2039
+ #
2040
+ # @option params [String] :description
2041
+ # A short user-defined function description. AWS Lambda does not use
2042
+ # this value. Assign a meaningful description as you see fit.
2043
+ #
2044
+ # @option params [Integer] :timeout
2045
+ # The function execution time at which AWS Lambda should terminate the
2046
+ # function. Because the execution time has cost implications, we
2047
+ # recommend you set this value based on your expected execution time.
2048
+ # The default is 3 seconds.
2049
+ #
2050
+ # @option params [Integer] :memory_size
2051
+ # The amount of memory, in MB, your Lambda function is given. AWS Lambda
2052
+ # uses this memory size to infer the amount of CPU allocated to your
2053
+ # function. Your function use-case determines your CPU and memory
2054
+ # requirements. For example, a database operation might need less memory
2055
+ # compared to an image processing function. The default value is 128 MB.
2056
+ # The value must be a multiple of 64 MB.
2057
+ #
2058
+ # @option params [Types::VpcConfig] :vpc_config
2059
+ # If your Lambda function accesses resources in a VPC, you provide this
2060
+ # parameter identifying the list of security group IDs and subnet IDs.
2061
+ # These must belong to the same VPC. You must provide at least one
2062
+ # security group and one subnet ID.
2063
+ #
2064
+ # @option params [Types::Environment] :environment
2065
+ # The parent object that contains your environment's configuration
2066
+ # settings.
2067
+ #
2068
+ # @option params [String] :runtime
2069
+ # The runtime environment for the Lambda function.
2070
+ #
2071
+ # To use the Node.js runtime v4.3, set the value to "nodejs4.3". To
2072
+ # use earlier runtime (v0.10.42), set the value to "nodejs".
2073
+ #
2074
+ # <note markdown="1"> You can no longer downgrade to the v0.10.42 runtime version. This
2075
+ # version will no longer be supported as of early 2017.
2076
+ #
2077
+ # </note>
2078
+ #
2079
+ # @option params [Types::DeadLetterConfig] :dead_letter_config
2080
+ # The parent object that contains the target Amazon Resource Name (ARN)
2081
+ # of an Amazon SQS queue or Amazon SNS topic.
2082
+ #
2083
+ # @option params [String] :kms_key_arn
2084
+ # The Amazon Resource Name (ARN) of the KMS key used to encrypt your
2085
+ # function's environment variables. If you elect to use the AWS Lambda
2086
+ # default service key, pass in an empty string ("") for this
2087
+ # parameter.
2088
+ #
2089
+ # @return [Types::FunctionConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2090
+ #
2091
+ # * {Types::FunctionConfiguration#function_name #function_name} => String
2092
+ # * {Types::FunctionConfiguration#function_arn #function_arn} => String
2093
+ # * {Types::FunctionConfiguration#runtime #runtime} => String
2094
+ # * {Types::FunctionConfiguration#role #role} => String
2095
+ # * {Types::FunctionConfiguration#handler #handler} => String
2096
+ # * {Types::FunctionConfiguration#code_size #code_size} => Integer
2097
+ # * {Types::FunctionConfiguration#description #description} => String
2098
+ # * {Types::FunctionConfiguration#timeout #timeout} => Integer
2099
+ # * {Types::FunctionConfiguration#memory_size #memory_size} => Integer
2100
+ # * {Types::FunctionConfiguration#last_modified #last_modified} => Time
2101
+ # * {Types::FunctionConfiguration#code_sha_256 #code_sha_256} => String
2102
+ # * {Types::FunctionConfiguration#version #version} => String
2103
+ # * {Types::FunctionConfiguration#vpc_config #vpc_config} => Types::VpcConfigResponse
2104
+ # * {Types::FunctionConfiguration#dead_letter_config #dead_letter_config} => Types::DeadLetterConfig
2105
+ # * {Types::FunctionConfiguration#environment #environment} => Types::EnvironmentResponse
2106
+ # * {Types::FunctionConfiguration#kms_key_arn #kms_key_arn} => String
2107
+ #
2108
+ # @example Request syntax with placeholder values
2109
+ #
2110
+ # resp = client.update_function_configuration({
2111
+ # function_name: "FunctionName", # required
2112
+ # role: "RoleArn",
2113
+ # handler: "Handler",
2114
+ # description: "Description",
2115
+ # timeout: 1,
2116
+ # memory_size: 1,
2117
+ # vpc_config: {
2118
+ # subnet_ids: ["SubnetId"],
2119
+ # security_group_ids: ["SecurityGroupId"],
2120
+ # },
2121
+ # environment: {
2122
+ # variables: {
2123
+ # "EnvironmentVariableName" => "EnvironmentVariableValue",
2124
+ # },
2125
+ # },
2126
+ # runtime: "nodejs", # accepts nodejs, nodejs4.3, java8, python2.7, dotnetcore1.0, nodejs4.3-edge
2127
+ # dead_letter_config: {
2128
+ # target_arn: "ResourceArn",
2129
+ # },
2130
+ # kms_key_arn: "KMSKeyArn",
2131
+ # })
2132
+ #
2133
+ # @example Response structure
2134
+ #
2135
+ # resp.function_name #=> String
2136
+ # resp.function_arn #=> String
2137
+ # resp.runtime #=> String, one of "nodejs", "nodejs4.3", "java8", "python2.7", "dotnetcore1.0", "nodejs4.3-edge"
2138
+ # resp.role #=> String
2139
+ # resp.handler #=> String
2140
+ # resp.code_size #=> Integer
2141
+ # resp.description #=> String
2142
+ # resp.timeout #=> Integer
2143
+ # resp.memory_size #=> Integer
2144
+ # resp.last_modified #=> Time
2145
+ # resp.code_sha_256 #=> String
2146
+ # resp.version #=> String
2147
+ # resp.vpc_config.subnet_ids #=> Array
2148
+ # resp.vpc_config.subnet_ids[0] #=> String
2149
+ # resp.vpc_config.security_group_ids #=> Array
2150
+ # resp.vpc_config.security_group_ids[0] #=> String
2151
+ # resp.vpc_config.vpc_id #=> String
2152
+ # resp.dead_letter_config.target_arn #=> String
2153
+ # resp.environment.variables #=> Hash
2154
+ # resp.environment.variables["EnvironmentVariableName"] #=> String
2155
+ # resp.environment.error.error_code #=> String
2156
+ # resp.environment.error.message #=> String
2157
+ # resp.kms_key_arn #=> String
2158
+ #
2159
+ # @overload update_function_configuration(params = {})
2160
+ # @param [Hash] params ({})
2161
+ def update_function_configuration(params = {}, options = {})
2162
+ req = build_request(:update_function_configuration, params)
2163
+ req.send_request(options)
2164
+ end
1964
2165
 
1965
- # @param params ({})
1966
- # @api private
1967
- def build_request(operation_name, params = {})
1968
- handlers = @handlers.for(operation_name)
1969
- context = Seahorse::Client::RequestContext.new(
1970
- operation_name: operation_name,
1971
- operation: config.api.operation(operation_name),
1972
- client: self,
1973
- params: params,
1974
- config: config)
1975
- context[:gem_name] = 'aws-sdk-lambda'
1976
- context[:gem_version] = '1.0.0.rc2'
1977
- Seahorse::Client::Request.new(handlers, context)
1978
- end
2166
+ # @!endgroup
1979
2167
 
1980
- # @api private
1981
- # @deprecated
1982
- def waiter_names
1983
- []
1984
- end
2168
+ # @param params ({})
2169
+ # @api private
2170
+ def build_request(operation_name, params = {})
2171
+ handlers = @handlers.for(operation_name)
2172
+ context = Seahorse::Client::RequestContext.new(
2173
+ operation_name: operation_name,
2174
+ operation: config.api.operation(operation_name),
2175
+ client: self,
2176
+ params: params,
2177
+ config: config)
2178
+ context[:gem_name] = 'aws-sdk-lambda'
2179
+ context[:gem_version] = '1.0.0.rc2'
2180
+ Seahorse::Client::Request.new(handlers, context)
2181
+ end
1985
2182
 
1986
- class << self
2183
+ # @api private
2184
+ # @deprecated
2185
+ def waiter_names
2186
+ []
2187
+ end
1987
2188
 
1988
- # @api private
1989
- attr_reader :identifier
2189
+ class << self
1990
2190
 
1991
- # @api private
1992
- def errors_module
1993
- Errors
1994
- end
2191
+ # @api private
2192
+ attr_reader :identifier
1995
2193
 
2194
+ # @api private
2195
+ def errors_module
2196
+ Errors
1996
2197
  end
2198
+
1997
2199
  end
1998
2200
  end
1999
2201
  end