Skip to content
Docs

Create a PrivateLink endpoint

POSThttps://api.vercel.com/v1/networking/privatelink/endpoints
Creates a PrivateLink endpoint for a project.
https://api.vercel.com/v1/networking/privatelink/endpoints
const response = await fetch('https://api.vercel.com/v1/networking/privatelink/endpoints?teamId=string&slug=string', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"projectId": "prj_a1b2c3d4e5f6g7h8",
"name": "payments-db",
"vercelRegion": "iad1",
"awsServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-0123456789abcdef0",
"enablePrivateDns": "false"
}),
});
const data = await response.json();
console.log(data);
Response
{
"awsDnsEntries": [],
"awsServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-0123456789abcdef0",
"createdAt": "1610963878358",
"endpointId": "ple_a1b2c3d4e5f6g7h8",
"name": "payments-db",
"privateDnsNames": [],
"projectId": "prj_a1b2c3d4e5f6g7h8",
"status": "available",
"statusMessage": "Endpoint did not become available in time. Try deleting and recreating, or visit https://vercel.com/help if the issue persists.",
"teamId": "team_a1b2c3d4e5f6g7h8",
"updatedAt": "1610963878358",
"vercelRegion": "iad1",
"vpcEndpointId": "vpce-0123456789abcdef0"
}
AuthorizationbearerToken

Default authentication mechanism

teamIdstringOptional
The Team identifier to perform the request on behalf of.
slugstringOptional
The Team slug to perform the request on behalf of.
application/json
projectIdstringRequired
The project ID to create the PrivateLink endpoint for.
namestringRequired
The name of the PrivateLink endpoint, used as its label in the Vercel dashboard.
vercelRegionstringRequired
The Vercel region to provision the endpoint in. Advanced Networking must be enabled for the project in that region. The endpoint service itself may live in another AWS region.
awsServiceNamestringRequired
The name of the AWS VPC endpoint service to connect to. Its AWS region is read from the name; when that region differs from the one behind vercelRegion, the service must allow cross-region access.
enablePrivateDnsbooleanOptional
Whether to resolve the endpoint service through its private DNS names, which are then returned in privateDnsNames. Defaults to false, in which case the endpoint is reachable through the DNS names in awsDnsEntries.
201The PrivateLink endpoint was created and is being provisioned.
awsDnsEntriesarrayOptional
The regional DNS names assigned to the endpoint by AWS. Use these to reach the service when private DNS is not enabled.
awsServiceNamestringRequired
The AWS VPC endpoint service the endpoint connects to.
createdAtnumberRequired
Timestamp in milliseconds since the UNIX epoch for when the endpoint was created.
endpointIdstringRequired
The unique identifier of the PrivateLink endpoint.
namestringRequired
The name of the PrivateLink endpoint, shown in the Vercel dashboard.
privateDnsNamesarrayOptional
The private DNS names of the endpoint service, populated when private DNS is enabled for the endpoint.
projectIdstringRequired
The identifier of the project the PrivateLink endpoint belongs to.
statusstringRequired
The current state of the endpoint. - creating: the endpoint is being created. - pending-acceptance: waiting for the endpoint service owner to accept the connection. Only occurs for services that require manual acceptance. - provisioning: the connection was accepted and AWS is finishing setup. - available: the endpoint is fully provisioned and ready to use. - rejected: the endpoint service owner rejected the connection. - failed: the endpoint could not be provisioned. - deleting: the endpoint is being deleted.
statusMessagestringOptional
A human-readable explanation of why the endpoint could not be provisioned. Only set when status is failed, and absent for every other status including rejected, since AWS does not report a rejection reason.
teamIdstringRequired
The identifier of the team that owns the PrivateLink endpoint.
updatedAtnumberRequired
Timestamp in milliseconds since the UNIX epoch for when the endpoint was last updated.
vercelRegionstringRequired
The Vercel region the endpoint is provisioned in.
vpcEndpointIdstringOptional
The identifier of the underlying AWS VPC endpoint. Absent until AWS has created the endpoint.
400One of the provided values in the request body is invalid.
401The request is not authorized.
403You do not have permission to access this resource.
404Error
409Error
410Error