---
type: api
title: Get Observability projects
description: Fetches a list of Observability projects.
url: https://www.elastic.co/elastic/docs-builder/docs/4641/api/doc/cloud-serverless/operation/operation-listobservabilityprojects
resource: https://www.elastic.co/elastic/docs-builder/docs/4641/api/doc/cloud-serverless/operation/operation-listobservabilityprojects
products:
  - Elastic Cloud Serverless
---

# Get Observability projects

Authentication: required

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

## Paths

- `GET` `/api/v1/serverless/projects/observability`

## Description

Fetches a list of Observability projects.

## Query string parameters

- `traffic_filter` (string) — optional
  traffic filters associated with this project
- `linked` (string · pattern: ^[a-z0-9]{32}$) — optional
  Contains a project ID. If specified, the result will be filtered to only those origin projects that are linked to the specified project ID in a cross-project search configuration.
- `tags` (map string to string · min properties: 1 · max properties: 64) — optional
  If specified, the result will be filtered to only those projects that have the specified tags and corresponding values.
  Map values (string · min length: 1 · max length: 128 · pattern: ^[a-z0-9][a-z0-9_-]*$)

## Responses

#### `200`

The Observability project list

`application/json`

- `next_page` (string) — deprecated
  A token to fetch the next page.
- `items` (object[])
  The actual projects.
  - `id` (string · pattern: ^[a-z0-9]{32}$)
    ID of the project.
  - `name` (string · min length: 1 · max length: 255)
    Descriptive name for a project.
  - `alias` (string · min length: 8 · max length: 57 · pattern: ^[a-zA-Z]{1}(?:[a-zA-Z0-9-]*[a-zA-Z0-9]{1})?$)
    A domain label compatible with RFC-1035 standards. Project alias with a unique suffix added by the system to avoid naming conflicts.
  - `region_id` (string)
    Unique human-readable identifier for a region in Elastic Cloud.
  - `metadata` (object)
    Additional details about the project.
    - `created_at` (string · format: date-time)
      Date and time when the project was created.
    - `created_by` (string)
      ID of the user.
    - `organization_id` (string)
      The Organization ID who owns the project.
    - `suspended_at` (string · format: date-time)
      Date and time when the project was suspended.
    - `suspended_reason` (string)
      Reason why the project was suspended.
    - `tags` (map string to string · min properties: 1 · max properties: 64)
      Tags associated with a project in the form of key-value pairs. Tags are limited to a minimum of 1 and a maximum of 64 per project. Each tag key must begin with a lowercase letter (a-z), contain only lowercase letters, digits, underscores, and hyphens (a-z0-9_-), and have a maximum length of 32 characters.
      Map values (string · min length: 1 · max length: 128 · pattern: ^[a-z0-9][a-z0-9_-]*$)
    - `system_tags` (map string to string)
      System tags associated with a project in the form of key-value pairs. These tags are added by the internal system and are read-only. The keys are prefixed with an underscore to differentiate them from user tags.
      Map values (string · min length: 1 · max length: 128 · pattern: ^[a-z0-9][a-z0-9_-]*$)
    - `annotations` (map string to string · min properties: 1 · max properties: 64)
      Annotations associated with a project, as key-value pairs that keep their case. A project can have at most 64 annotations, separate from its tags. Each key must start with a letter, contain only letters, digits, underscores and hyphens (a-zA-Z0-9_-), and be at most 32 characters long. Annotations can't be used in cross-project search and can't filter the project list.
      Map values (string · min length: 1 · max length: 128 · pattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*$)
  - `cloud_id` (string)
    The cloud ID, an encoded string that provides other Elastic services with the necessary information to connect to this Elasticsearch and Kibana.
  - `traffic_filters` (object[])
    traffic filters IDs
    - `id` (string)
      traffic filter ID
  - `linked` (object)
    Configuration for projects linked to this project
    - `projects` (map string to object)
      Map values (object)
      - `status` (enum)
        The state of the linked project.
        Values: `enabled`, `suspended`, `deleted`
      - `type` (enum)
        The type of the linked project
        Values: `elasticsearch`, `observability`, `security`, `vectordb`
  - `monitoring` (object)
    Configuration for monitoring a project.
    - `logging` (object)
      Configuration for project logs.
      - `audit` (object)
        Configuration for logs from a specific category.
        - `destination` (object)
          Configuration for destination of logs.
          - `project_id` (string · pattern: ^[a-z0-9]{32}$)
            ID of the project.
          - `project_type` (enum)
            The type of the linked project
            Values: `elasticsearch`, `observability`, `security`, `vectordb`
          - `status` (enum)
            The state of log delivery to this destination. Controlled by the system and read-only: it is set to `suspended` or `deleted` when the destination project is suspended or deleted. Logs are only delivered when this is `enabled` and the logging category's `enabled` flag is true.
            Values: `enabled`, `suspended`, `deleted`
        - `enabled` (boolean)
          When true, logs from this category are delivered to the configured destination. When false, delivery is paused but the configuration is preserved.
        - `ignore_filters` (object[])
          References to logging ignore filters applied to reduce the volume of logs delivered for this category.
          - `id` (string)
            The unique identifier of the ignore filter.
  - `type` (enum)
    the type of the project
    Values: `observability`
  - `product_tier` (enum)
    the tier of the observability project. The default is "complete" when not specified at creation time.
    Values: `complete`, `logs_essentials`
  - `endpoints` (object)
    The endpoints to access the different apps of the project.
    - `elasticsearch` (string)
      The endpoint to access elasticsearch.
    - `kibana` (string)
      The endpoint to access kibana.
    - `apm` (string)
      The endpoint to access apm.
    - `ingest` (string)
      The endpoint to access the Managed OTLP Endpoint.
  - `private_endpoints` (object)
    Private endpoints (URLs) for Observability projects when PrivateLink is enabled.
    - `elasticsearch` (string)
      The PrivateLink endpoint URL to access elasticsearch.
    - `kibana` (string)
      The PrivateLink endpoint URL to access kibana.
    - `apm` (string)
      The PrivateLink endpoint URL to access APM.
    - `ingest` (string)
      The PrivateLink endpoint URL to access the Managed OTLP Endpoint.
#### `401`

Unauthorized

`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/projects/observability" \
  -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
{
  "next_page": "string",
  "items": [
    {
      "id": "string",
      "name": "my project",
      "alias": "my-project-alias-bdc0f7",
      "region_id": "aws-us-east-1",
      "metadata": {
        "created_at": "string",
        "created_by": "1014289666002276",
        "organization_id": "198583657190",
        "suspended_at": "string",
        "suspended_reason": "trial expired",
        "tags": {
          "key": "string"
        },
        "system_tags": {
          "key": "string"
        },
        "annotations": {
          "key": "string"
        }
      },
      "cloud_id": "my_project:LmF3cy5lbGFzdG",
      "traffic_filters": [
        {
          "id": "traffic-filter-1"
        }
      ],
      "linked": {
        "projects": {
          "key": {
            "status": "enabled",
            "type": "elasticsearch"
          }
        }
      },
      "monitoring": {
        "logging": {
          "audit": {
            "enabled": false
          }
        }
      },
      "type": "observability",
      "product_tier": "complete",
      "endpoints": {
        "elasticsearch": "string",
        "kibana": "string",
        "apm": "string",
        "ingest": "string"
      },
      "private_endpoints": {
        "elasticsearch": "https://my-project-alias-df6c6d.es.private.us-east-1.aws.elastic.cloud",
        "kibana": "https://my-project-alias-df6c6d.kb.private.us-east-1.aws.elastic.cloud",
        "apm": "https://my-project-alias-df6c6d.apm.private.us-east-1.aws.elastic.cloud",
        "ingest": "https://my-project-alias-df6c6d.ingest.private.us-east-1.aws.elastic.cloud"
      }
    }
  ]
}
```

#### 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"
    }
  ]
}
```

