Add One Interface Endpoint to a Private Endpoint Connection


Groups and projects are synonymous terms. Your {GROUP-ID} is the same as your project ID. For existing groups, your group/project ID remains the same. The resource and corresponding endpoints use the term groups.

Add one interface endpoint to a private endpoint connection in an Atlas project.

You must first create the endpoint in AWS with the following information:

If the attempt to add an interface endpoint fails, delete it, then try to add a new one.

The Atlas API authenticates using HTTP Digest Authentication. Provide a programmatic API public key and corresponding private key as the username and password when constructing the HTTP request.

To learn how to configure API access for an Atlas project, see Configure Atlas API Access.

Required Roles

You must have one of the following roles to successfully call this resource:


Base URL:

POST /groups/{GROUP-ID}/privateEndpoint/{privateLinkId}/interfaceEndpoints

Request Path Parameters

Path Parameter Required/Optional Description
GROUP-ID Required Unique identifier for the project.
privateLinkId Required Unique identifier of the AWS PrivateLink connection.

Request Query Parameters

Name Type Necessity Description Default
pageNum integer Optional Page number (1-based). 1
itemsPerPage integer Optional Maximum number of items to return, up to a maximum of 100. 100
includeCount boolean Optional Specifies whether the response returns the totalCount field. true
pretty boolean Optional Indicates whether the response body should be in a prettyprint format. false
envelope boolean Optional

Flag indicating if Atlas should wrap the response in a JSON envelope.

Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query.

For endpoints that return a list of results, the results object is an envelope. Atlas adds the status field to the response body.


Request Body Parameters

Body Parameter Type Necessity Description
interfaceEndpointId string Required Unique identifier of the interface endpoint you created in your VPC.

Response Elements

Response Parameter Type Description
connectionStatus string

Status of the interface endpoint. Returns one of the following values:

Status Description
NONE Atlas created the network load balancer and VPC endpoint service, but AWS hasn’t yet created the VPC endpoint.
PENDING_ACCEPTANCE AWS has received the connection request from your VPC endpoint to the Atlas VPC endpoint service.
PENDING AWS is establishing the connection between your VPC endpoint and the Atlas VPC endpoint service.
AVAILABLE Atlas VPC resources are connected to the VPC endpoint in your VPC. You can connect to Atlas clusters in this region using AWS PrivateLink.
REJECTED AWS failed to establish a connection between Atlas VPC resources to the VPC endpoint in your VPC.
DELETING Atlas is removing the interface endpoint from the private endpoint connection.
deleteRequested boolean Flag that indicates whether Atlas received a request to remove the interface endpoint from the private endpoint connection.
errorMessage string Error message pertaining to the interface endpoint. Atlas returns null if there are no errors.
interfaceEndpointId string Unique identifier of the interface endpoint.

Example Request

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
  --header "Accept: application/json" \
  --header "Content-Type: application/json" \
  --request POST "{GROUP-ID}/privateEndpoint/{privateLinkId}/interfaceEndpoints?pretty=true" \
  --data '

Example Response

  "connectionStatus": "PENDING",
  "deleteRequested": false,
  "errorMessage": null,
  "interfaceEndpointId": "vpce-08fb7e9319909ec7b"