CreateEndpoint - Amazon Simple Storage Service


Amazon S3 on Outposts Access Points simplify managing data access at scale for shared datasets in S3 on Outposts. S3 on Outposts uses endpoints to connect to AWS Outposts buckets so that you can perform actions within your virtual private cloud (VPC). For more information, see Accessing S3 on Outposts using VPC-only access points in the Amazon Simple Storage Service User Guide.

This action creates an endpoint and associates it with the specified Outposts.


It can take up to 5 minutes for this action to finish.

Related actions include:

Request Syntax

POST /S3Outposts/CreateEndpoint HTTP/1.1 Content-type: application/json { "AccessType": "string", "CustomerOwnedIpv4Pool": "string", "OutpostId": "string", "SecurityGroupId": "string", "SubnetId": "string" }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.


The type of access for the network connectivity for the Amazon S3 on Outposts endpoint. To use the AWS VPC, choose Private. To use the endpoint with an on-premises network, choose CustomerOwnedIp. If you choose CustomerOwnedIp, you must also provide the customer-owned IP address pool (CoIP pool).


Private is the default access type value.

Type: String

Valid Values: Private | CustomerOwnedIp

Required: No


The ID of the customer-owned IPv4 address pool (CoIP pool) for the endpoint. IP addresses are allocated from this pool for the endpoint.

Type: String

Pattern: ^ipv4pool-coip-([0-9a-f]{17})$

Required: No


The ID of the AWS Outposts.

Type: String

Pattern: ^(op-[a-f0-9]{17}|\d{12}|ec2)$

Required: Yes


The ID of the security group to use with the endpoint.

Type: String

Pattern: ^sg-([0-9a-f]{8}|[0-9a-f]{17})$

Required: Yes


The ID of the subnet in the selected VPC. The endpoint subnet must belong to the Outpost that has Amazon S3 on Outposts provisioned.

Type: String

Pattern: ^subnet-([0-9a-f]{8}|[0-9a-f]{17})$

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "EndpointArn": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.


The Amazon Resource Name (ARN) of the endpoint.

Type: String

Pattern: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):s3-outposts:[a-z\-0-9]*:[0-9]{12}:outpost/(op-[a-f0-9]{17}|ec2)/endpoint/[a-zA-Z0-9]{19}$



Access was denied for this action.

HTTP Status Code: 403


There was a conflict with this action, and it could not be completed.

HTTP Status Code: 409


There was an exception with the internal server.

HTTP Status Code: 500


The requested resource was not found.

HTTP Status Code: 404


There was an exception validating this data.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: