Skip to content

Commit 440f192

Browse files
authored
Merge branch 'master' into master
2 parents 7f301f1 + 8ef3d5e commit 440f192

File tree

156 files changed

+4067
-1661
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

156 files changed

+4067
-1661
lines changed
Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
# AddLayerVersionPermission<a name="API_AddLayerVersionPermission"></a>
2+
3+
Adds permissions to the resource\-based policy of a version of a function layer\. Use this action to grant layer usage permission to other accounts\. You can grant permission to a single account, all AWS accounts, or all accounts in an organization\.
4+
5+
To revoke permission, call [RemoveLayerVersionPermission](API_RemoveLayerVersionPermission.md) with the statement ID that you specified when you added it\.
6+
7+
## Request Syntax<a name="API_AddLayerVersionPermission_RequestSyntax"></a>
8+
9+
```
10+
POST /2018-10-31/layers/LayerName/versions/VersionNumber/policy?RevisionId=RevisionId HTTP/1.1
11+
Content-type: application/json
12+
13+
{
14+
"[Action](#SSS-AddLayerVersionPermission-request-Action)": "string",
15+
"[OrganizationId](#SSS-AddLayerVersionPermission-request-OrganizationId)": "string",
16+
"[Principal](#SSS-AddLayerVersionPermission-request-Principal)": "string",
17+
"[StatementId](#SSS-AddLayerVersionPermission-request-StatementId)": "string"
18+
}
19+
```
20+
21+
## URI Request Parameters<a name="API_AddLayerVersionPermission_RequestParameters"></a>
22+
23+
The request requires the following URI parameters\.
24+
25+
** [LayerName](#API_AddLayerVersionPermission_RequestSyntax) ** <a name="SSS-AddLayerVersionPermission-request-LayerName"></a>
26+
The name of the layer\.
27+
Length Constraints: Minimum length of 1\. Maximum length of 140\.
28+
Pattern: `(arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+)|[a-zA-Z0-9-_]+`
29+
30+
** [RevisionId](#API_AddLayerVersionPermission_RequestSyntax) ** <a name="SSS-AddLayerVersionPermission-request-RevisionId"></a>
31+
Only update the policy if the revision ID matches the ID specified\. Use this option to avoid modifying a policy that has changed since you last read it\.
32+
33+
** [VersionNumber](#API_AddLayerVersionPermission_RequestSyntax) ** <a name="SSS-AddLayerVersionPermission-request-VersionNumber"></a>
34+
The version number\.
35+
36+
## Request Body<a name="API_AddLayerVersionPermission_RequestBody"></a>
37+
38+
The request accepts the following data in JSON format\.
39+
40+
** [Action](#API_AddLayerVersionPermission_RequestSyntax) ** <a name="SSS-AddLayerVersionPermission-request-Action"></a>
41+
The API action that grants access to the layer\. For example, `lambda:GetLayerVersion`\.
42+
Type: String
43+
Pattern: `lambda:GetLayerVersion`
44+
Required: Yes
45+
46+
** [OrganizationId](#API_AddLayerVersionPermission_RequestSyntax) ** <a name="SSS-AddLayerVersionPermission-request-OrganizationId"></a>
47+
With the principal set to `*`, grant permission to all accounts in the specified organization\.
48+
Type: String
49+
Pattern: `o-[a-z0-9]{10,32}`
50+
Required: No
51+
52+
** [Principal](#API_AddLayerVersionPermission_RequestSyntax) ** <a name="SSS-AddLayerVersionPermission-request-Principal"></a>
53+
An account ID, or `*` to grant permission to all AWS accounts\.
54+
Type: String
55+
Pattern: `\d{12}|\*|arn:(aws[a-zA-Z-]*):iam::\d{12}:root`
56+
Required: Yes
57+
58+
** [StatementId](#API_AddLayerVersionPermission_RequestSyntax) ** <a name="SSS-AddLayerVersionPermission-request-StatementId"></a>
59+
An identifier that distinguishes the policy from others on the same layer version\.
60+
Type: String
61+
Length Constraints: Minimum length of 1\. Maximum length of 100\.
62+
Pattern: `([a-zA-Z0-9-_]+)`
63+
Required: Yes
64+
65+
## Response Syntax<a name="API_AddLayerVersionPermission_ResponseSyntax"></a>
66+
67+
```
68+
HTTP/1.1 201
69+
Content-type: application/json
70+
71+
{
72+
"[RevisionId](#SSS-AddLayerVersionPermission-response-RevisionId)": "string",
73+
"[Statement](#SSS-AddLayerVersionPermission-response-Statement)": "string"
74+
}
75+
```
76+
77+
## Response Elements<a name="API_AddLayerVersionPermission_ResponseElements"></a>
78+
79+
If the action is successful, the service sends back an HTTP 201 response\.
80+
81+
The following data is returned in JSON format by the service\.
82+
83+
** [RevisionId](#API_AddLayerVersionPermission_ResponseSyntax) ** <a name="SSS-AddLayerVersionPermission-response-RevisionId"></a>
84+
A unique identifier for the current revision of the policy\.
85+
Type: String
86+
87+
** [Statement](#API_AddLayerVersionPermission_ResponseSyntax) ** <a name="SSS-AddLayerVersionPermission-response-Statement"></a>
88+
The permission statement\.
89+
Type: String
90+
91+
## Errors<a name="API_AddLayerVersionPermission_Errors"></a>
92+
93+
**InvalidParameterValueException**
94+
One of the parameters in the request is invalid\. For example, if you provided an IAM role for AWS Lambda to assume in the `CreateFunction` or the `UpdateFunctionConfiguration` API, that AWS Lambda is unable to assume you will get this exception\.
95+
HTTP Status Code: 400
96+
97+
**PolicyLengthExceededException**
98+
Lambda function access policy is limited to 20 KB\.
99+
HTTP Status Code: 400
100+
101+
**PreconditionFailedException**
102+
The RevisionId provided does not match the latest RevisionId for the Lambda function or alias\. Call the `GetFunction` or the `GetAlias` API to retrieve the latest RevisionId for your resource\.
103+
HTTP Status Code: 412
104+
105+
**ResourceConflictException**
106+
The resource already exists\.
107+
HTTP Status Code: 409
108+
109+
**ResourceNotFoundException**
110+
The resource \(for example, a Lambda function or access policy statement\) specified in the request does not exist\.
111+
HTTP Status Code: 404
112+
113+
**ServiceException**
114+
The AWS Lambda service encountered an internal error\.
115+
HTTP Status Code: 500
116+
117+
**TooManyRequestsException**
118+
Request throughput limit exceeded
119+
HTTP Status Code: 429
120+
121+
## See Also<a name="API_AddLayerVersionPermission_SeeAlso"></a>
122+
123+
For more information about using this API in one of the language\-specific AWS SDKs, see the following:
124+
+ [AWS Command Line Interface](https://docs.aws.amazon.com/goto/aws-cli/lambda-2015-03-31/AddLayerVersionPermission)
125+
+ [AWS SDK for \.NET](https://docs.aws.amazon.com/goto/DotNetSDKV3/lambda-2015-03-31/AddLayerVersionPermission)
126+
+ [AWS SDK for C\+\+](https://docs.aws.amazon.com/goto/SdkForCpp/lambda-2015-03-31/AddLayerVersionPermission)
127+
+ [AWS SDK for Go](https://docs.aws.amazon.com/goto/SdkForGoV1/lambda-2015-03-31/AddLayerVersionPermission)
128+
+ [AWS SDK for Java](https://docs.aws.amazon.com/goto/SdkForJava/lambda-2015-03-31/AddLayerVersionPermission)
129+
+ [AWS SDK for JavaScript](https://docs.aws.amazon.com/goto/AWSJavaScriptSDK/lambda-2015-03-31/AddLayerVersionPermission)
130+
+ [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/lambda-2015-03-31/AddLayerVersionPermission)
131+
+ [AWS SDK for Python](https://docs.aws.amazon.com/goto/boto3/lambda-2015-03-31/AddLayerVersionPermission)
132+
+ [AWS SDK for Ruby V2](https://docs.aws.amazon.com/goto/SdkForRubyV2/lambda-2015-03-31/AddLayerVersionPermission)

doc_source/API_CreateEventSourceMapping.md

Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,11 @@
11
# CreateEventSourceMapping<a name="API_CreateEventSourceMapping"></a>
22

3-
Identifies a poll\-based event source for a Lambda function\. It can be either an Amazon Kinesis or DynamoDB stream\. AWS Lambda invokes the specified function when records are posted to the event source\.
3+
Creates a mapping between an event source and an AWS Lambda function\. Lambda reads items from the event source and triggers the function\.
44

5-
This association between a poll\-based source and a Lambda function is called the event source mapping\.
6-
7-
You provide mapping information \(for example, which stream or SQS queue to read from and which Lambda function to invoke\) in the request body\.
8-
9-
Amazon Kinesis or DynamoDB stream event sources can be associated with multiple AWS Lambda functions and a given Lambda function can be associated with multiple AWS event sources\. For Amazon SQS, you can configure multiple queues as event sources for a single Lambda function, but an SQS queue can be mapped only to a single Lambda function\.
10-
11-
You can configure an SQS queue in an account separate from your Lambda function's account\. Also the queue needs to reside in the same AWS region as your function\.
12-
13-
If you are using versioning, you can specify a specific function version or an alias via the function name parameter\. For more information about versioning, see [AWS Lambda Function Versioning and Aliases](https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html)\.
14-
15-
This operation requires permission for the `lambda:CreateEventSourceMapping` action\.
5+
For details about each event source type, see the following topics\.
6+
+ [Using AWS Lambda with Amazon Kinesis](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html)
7+
+ [Using AWS Lambda with Amazon SQS](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html)
8+
+ [Using AWS Lambda with Amazon DynamoDB](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html)
169

1710
## Request Syntax<a name="API_CreateEventSourceMapping_RequestSyntax"></a>
1811

@@ -39,44 +32,50 @@ The request does not use any URI parameters\.
3932
The request accepts the following data in JSON format\.
4033

4134
** [BatchSize](#API_CreateEventSourceMapping_RequestSyntax) ** <a name="SSS-CreateEventSourceMapping-request-BatchSize"></a>
42-
The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function\. Your function receives an event with all the retrieved records\. The default for Amazon Kinesis and Amazon DynamoDB is 100 records\. Both the default and maximum for Amazon SQS are 10 messages\.
35+
The maximum number of items to retrieve in a single batch\.
36+
+ **Amazon Kinesis** \- Default 100\. Max 10,000\.
37+
+ **Amazon DynamoDB Streams** \- Default 100\. Max 1,000\.
38+
+ **Amazon Simple Queue Service** \- Default 10\. Max 10\.
4339
Type: Integer
4440
Valid Range: Minimum value of 1\. Maximum value of 10000\.
4541
Required: No
4642

4743
** [Enabled](#API_CreateEventSourceMapping_RequestSyntax) ** <a name="SSS-CreateEventSourceMapping-request-Enabled"></a>
48-
Set to false to disable the event source upon creation\.
44+
Disables the event source mapping to pause polling and invocation\.
4945
Type: Boolean
5046
Required: No
5147

5248
** [EventSourceArn](#API_CreateEventSourceMapping_RequestSyntax) ** <a name="SSS-CreateEventSourceMapping-request-EventSourceArn"></a>
5349
The Amazon Resource Name \(ARN\) of the event source\.
50+
+ **Amazon Kinesis** \- The ARN of the data stream or a stream consumer\.
51+
+ **Amazon DynamoDB Streams** \- The ARN of the stream\.
52+
+ **Amazon Simple Queue Service** \- The ARN of the queue\.
5453
Type: String
5554
Pattern: `arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)`
5655
Required: Yes
5756

5857
** [FunctionName](#API_CreateEventSourceMapping_RequestSyntax) ** <a name="SSS-CreateEventSourceMapping-request-FunctionName"></a>
59-
The name of the lambda function\.
58+
The name of the Lambda function\.
6059

6160
**Name formats**
6261
+ **Function name** \- `MyFunction`\.
6362
+ **Function ARN** \- `arn:aws:lambda:us-west-2:123456789012:function:MyFunction`\.
6463
+ **Version or Alias ARN** \- `arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD`\.
6564
+ **Partial ARN** \- `123456789012:function:MyFunction`\.
66-
The length constraint applies only to the full ARN\. If you specify only the function name, it is limited to 64 characters in length\.
65+
The length constraint applies only to the full ARN\. If you specify only the function name, it's limited to 64 characters in length\.
6766
Type: String
6867
Length Constraints: Minimum length of 1\. Maximum length of 140\.
6968
Pattern: `(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?`
7069
Required: Yes
7170

7271
** [StartingPosition](#API_CreateEventSourceMapping_RequestSyntax) ** <a name="SSS-CreateEventSourceMapping-request-StartingPosition"></a>
73-
The position in the DynamoDB or Kinesis stream where AWS Lambda should start reading\. For more information, see [GetShardIterator](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType) in the *Amazon Kinesis API Reference Guide* or [GetShardIterator](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_streams_GetShardIterator.html) in the *Amazon DynamoDB API Reference Guide*\. The `AT_TIMESTAMP` value is supported only for [Kinesis streams](https://docs.aws.amazon.com/streams/latest/dev/amazon-kinesis-streams.html)\.
72+
The position in a stream from which to start reading\. Required for Amazon Kinesis and Amazon DynamoDB Streams sources\. `AT_TIMESTAMP` is only supported for Amazon Kinesis streams\.
7473
Type: String
7574
Valid Values:` TRIM_HORIZON | LATEST | AT_TIMESTAMP`
7675
Required: No
7776

7877
** [StartingPositionTimestamp](#API_CreateEventSourceMapping_RequestSyntax) ** <a name="SSS-CreateEventSourceMapping-request-StartingPositionTimestamp"></a>
79-
The timestamp of the data record from which to start reading\. Used with [shard iterator type](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html#Kinesis-GetShardIterator-request-ShardIteratorType) AT\_TIMESTAMP\. If a record with this exact timestamp does not exist, the iterator returned is for the next \(later\) record\. If the timestamp is older than the current trim horizon, the iterator returned is for the oldest untrimmed data record \(TRIM\_HORIZON\)\. Valid only for [Kinesis streams](https://docs.aws.amazon.com/streams/latest/dev/amazon-kinesis-streams.html)\.
78+
With `StartingPosition` set to `AT_TIMESTAMP`, the Unix time in seconds from which to start reading\.
8079
Type: Timestamp
8180
Required: No
8281

@@ -105,38 +104,38 @@ If the action is successful, the service sends back an HTTP 202 response\.
105104
The following data is returned in JSON format by the service\.
106105

107106
** [BatchSize](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-BatchSize"></a>
108-
The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function\. Your function receives an event with all the retrieved records\.
107+
The maximum number of items to retrieve in a single batch\.
109108
Type: Integer
110109
Valid Range: Minimum value of 1\. Maximum value of 10000\.
111110

112111
** [EventSourceArn](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-EventSourceArn"></a>
113-
The Amazon Resource Name \(ARN\) of the Amazon Kinesis or DynamoDB stream that is the source of events\.
112+
The Amazon Resource Name \(ARN\) of the event source\.
114113
Type: String
115114
Pattern: `arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)`
116115

117116
** [FunctionArn](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-FunctionArn"></a>
118-
The Lambda function to invoke when AWS Lambda detects an event on the poll\-based source\.
117+
The ARN of the Lambda function\.
119118
Type: String
120119
Pattern: `arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?`
121120

122121
** [LastModified](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-LastModified"></a>
123-
The UTC time string indicating the last time the event mapping was updated\.
122+
The date that the event source mapping was last updated, in Unix time seconds\.
124123
Type: Timestamp
125124

126125
** [LastProcessingResult](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-LastProcessingResult"></a>
127-
The result of the last AWS Lambda invocation of your Lambda function\. This value will be null if an SQS queue is the event source\.
126+
The result of the last AWS Lambda invocation of your Lambda function\.
128127
Type: String
129128

130129
** [State](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-State"></a>
131-
The state of the event source mapping\. It can be `Creating`, `Enabled`, `Disabled`, `Enabling`, `Disabling`, `Updating`, or `Deleting`\.
130+
The state of the event source mapping\. It can be one of the following: `Creating`, `Enabling`, `Enabled`, `Disabling`, `Disabled`, `Updating`, or `Deleting`\.
132131
Type: String
133132

134133
** [StateTransitionReason](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-StateTransitionReason"></a>
135-
The reason the event source mapping is in its current state\. It is either user\-requested or an AWS Lambda\-initiated state transition\.
134+
The cause of the last state change, either `User initiated` or `Lambda initiated`\.
136135
Type: String
137136

138137
** [UUID](#API_CreateEventSourceMapping_ResponseSyntax) ** <a name="SSS-CreateEventSourceMapping-response-UUID"></a>
139-
The AWS Lambda assigned opaque identifier for the mapping\.
138+
The identifier of the event source mapping\.
140139
Type: String
141140

142141
## Errors<a name="API_CreateEventSourceMapping_Errors"></a>

0 commit comments

Comments
 (0)