---
type: api
title: List PrivateLink region metadata
description: Returns region-specific PrivateLink connectivity metadata. Optionally filter by region or csp. If no matches are found, returns 200 with an empty regions array.
url: https://www.elastic.co/docs/api/doc/cloud-serverless/operation/operation-gettrafficfiltermetadata
resource: https://www.elastic.co/docs/api/doc/cloud-serverless/operation/operation-gettrafficfiltermetadata
products:
  - Elastic Cloud Serverless
---

# List PrivateLink region metadata

Authentication: required

- Server: `https://api.elastic-cloud.com`

## Paths

- `GET` `/api/v1/serverless/traffic-filters/metadata`

## Description

Returns region-specific PrivateLink connectivity metadata. Optionally filter by region or csp. If no matches are found, returns 200 with an empty regions array.

## Query string parameters

- `region` (string · min length: 1) — optional
  Filter metadata to a specific region (e.g. aws-eu-west-1, azure-australiaeast).
- `csp` (string · min length: 1) — optional
  Filter metadata to a specific cloud service provider (aws, azure, gcp).

## Responses

#### `200`

Metadata returned.

`application/json`

- `regions` (object[])
  - `region` (string)
    Serverless region ID (e.g. `azure-australiaeast`, `aws-eu-west-1`).
  - `csp` (enum)
    Cloud service provider.
    Values: `aws`, `azure`, `gcp`
  - `vpc_service_name` (string) — deprecated
    Deprecated. Use private_service_name instead. Kept for backward compatibility.
  - `private_service_name` (string)
    CSP-specific PrivateLink service identifier. Use the `/metadata` endpoint to look up
the value for your region. See also [Private connectivity](https://www.elastic.co/docs/deploy-manage/security/private-connectivity).
- **AWS**: VPC endpoint service name (e.g. `com.amazonaws.vpce.eu-west-1.vpce-svc-…`).
- **Azure**: Private Link Service alias (e.g. `australiaeast-prod-….australiaeast.azure.privatelinkservice`).
- **GCP**: Service Attachment URI.
  - `private_hosted_zone_domain_name` (string)
    Private DNS suffix for project endpoints in this region. Create DNS records pointing
to your Private Endpoint under this zone.
  - `availability_zones` (object[])
    - `name` (string)
    - `id` (string)
#### `400`

Bad request

`application/json`

- `errors` (object[])
  - `message` (string)
    A human-readable message of the error.
  - `code` (string)
    An identifier for this type of error.
#### `401`

Unauthorized

`application/json`

- `errors` (object[])
  - `message` (string)
    A human-readable message of the error.
  - `code` (string)
    An identifier for this type of error.
#### `500`

Internal server error

`application/json`

- `errors` (object[])
  - `message` (string)
    A human-readable message of the error.
  - `code` (string)
    An identifier for this type of error.
## Code examples

#### curl

```curl
curl -X GET "https://api.elastic-cloud.com/api/v1/serverless/traffic-filters/metadata" \
  -H "Authorization: ApiKey ${API_KEY}"
```

## Response examples

#### 200

`application/json`

Generated from the API spec. Values are representative. Unions use the first variant; deeply nested or large bodies may omit fields.

```json
{
  "regions": [
    {
      "region": "azure-australiaeast",
      "csp": "azure",
      "vpc_service_name": "string",
      "private_service_name": "australiaeast-prod-012-privatelink-service.a0cf0c1a-33ab-4528-81e7-9cb23608f94e.australiaeast.azure.privatelinkservice",
      "private_hosted_zone_domain_name": "private.australiaeast.azure.elastic.cloud",
      "availability_zones": [
        {
          "name": "string",
          "id": "string"
        }
      ]
    }
  ]
}
```

#### 400

`application/json`

Generated from the API spec. Values are representative. Unions use the first variant; deeply nested or large bodies may omit fields.

```json
{
  "errors": [
    {
      "message": "Explicative error message",
      "code": "code.error"
    }
  ]
}
```

#### 401

`application/json`

Generated from the API spec. Values are representative. Unions use the first variant; deeply nested or large bodies may omit fields.

```json
{
  "errors": [
    {
      "message": "Explicative error message",
      "code": "code.error"
    }
  ]
}
```

#### 500

`application/json`

Generated from the API spec. Values are representative. Unions use the first variant; deeply nested or large bodies may omit fields.

```json
{
  "errors": [
    {
      "message": "Explicative error message",
      "code": "code.error"
    }
  ]
}
```

