---
title: "List PrivateLink endpoints"
method: GET
path: "/v1/networking/privatelink/endpoints"
tags: ["networking"]
---

# List PrivateLink endpoints

`GET /v1/networking/privatelink/endpoints`

## Request

- Base URL: `https://api.vercel.com`
- URL: `https://api.vercel.com/v1/networking/privatelink/endpoints`
- Auth: HTTP bearer

Lists all PrivateLink endpoints for a project.

## Query parameters

- `projectId` string, required: The project ID to list PrivateLink endpoints for.
- `teamId` string
- `slug` string

## Response `200`

The PrivateLink endpoints of the project.

- PrivateLinkEndpoint[]
  - `awsDnsEntries` string[]: The regional DNS names assigned to the endpoint by AWS. Use these to reach the service when private DNS is not enabled.
  - `awsServiceName` string, required: The AWS VPC endpoint service the endpoint connects to.
  - `createdAt` number, required: Timestamp in milliseconds since the UNIX epoch for when the endpoint was created.
  - `endpointId` string, required: The unique identifier of the PrivateLink endpoint.
  - `name` string, required: The name of the PrivateLink endpoint, shown in the Vercel dashboard.
  - `privateDnsNames` string[]: The private DNS names of the endpoint service, populated when private DNS is enabled for the endpoint.
  - `projectId` string, required: The identifier of the project the PrivateLink endpoint belongs to.
  - `status` 'available' | 'creating' | 'deleting' | 'failed' | 'pending-acceptance' | 'provisioning' | 'rejected', required: 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.
  - `statusMessage` string: 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.
  - `teamId` string, required: The identifier of the team that owns the PrivateLink endpoint.
  - `updatedAt` number, required: Timestamp in milliseconds since the UNIX epoch for when the endpoint was last updated.
  - `vercelRegion` string, required: The Vercel region the endpoint is provisioned in.
  - `vpcEndpointId` string: The identifier of the underlying AWS VPC endpoint. Absent until AWS has created the endpoint.

## Other responses

- `400`: One of the provided values in the request query is invalid.
- `401`: The request is not authorized.
- `403`: You do not have permission to access this resource.
- `404`
- `410`

## Changes

- **2026-09-03** `7c947faac0ef`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/vercel/apis/vercel-api/changes/v1/networking/privatelink/endpoints/get.md)

---

[API](https://skmtc.dev/vercel/apis/vercel-api.md) - [All operations](https://skmtc.dev/vercel/apis/vercel-api/llms.txt) - [OpenAPI document](https://skmtc.dev/vercel/apis/vercel-api/revisions/60686c0e1f6a?raw)
