Create an Elasticsearch project

Base URL
https://api.elastic-cloud.com
  • POST /api/v1/serverless/projects/elasticsearch
Auth

Create an Elasticsearch project. The response will include the created project details, such as the project ID, the credentials to access the project, and the endpoints to access different apps such as Elasticsearch and Kibana. The credentials can be regenerated at any time using the _reset-credentials endpoint.

Query parameters

exclude_credentials boolean

If true, the username and password fields in the response credentials are set to empty strings and no usable credentials are returned. Credentials can be retrieved later using the _reset-credentials endpoint.

Request body

Configuration of the elasticsearch project to create.

name string · min length: 1 · max length: 255 required

Descriptive name for a project.

alias string · min length: 1 · max length: 50 · pattern: ^[a-zA-Z]{1}(?:[a-zA-Z0-9-]*[a-zA-Z0-9]{1})?$

A custom domain label compatible with RFC-1035 standards. Derived from the project name by default.

region_id string required

Unique human-readable identifier for a region in Elastic Cloud.

optimized_for enum

The purpose for which the hardware of this elasticsearch project is optimized. Also known as the Elasticsearch project subtype.

  • The general_purpose option is suitable for most search use cases. For example, it is the right profile for full-text search, sparse vectors, and dense vectors that use compression such as BBQ. It is used by default when you create projects from the UI.
  • The vector option is recommended only for uncompressed dense vectors (dense_vector fields with int4 or int8 quantization strategies) and high dimensionality. Refer to documentation about billing dimensions for the impact to virtual compute unit (VCU) consumption.
Values: general_purpose vector
search_lake object

Configuration for entire set of capabilities that make the data searchable in Elasticsearch.

search_power integer · min: 28 · max: 3000

Controls how fast searches are against your project data. When ingested, a certain amount of data is loaded into a cache that makes it super fast to query. You can either increase the performance of searches on cached data by adding replicas, or reduce the quantity of cached data by a static factor to save on costs.

boost_window integer · min: 1 · max: 180

Determines how much data can benefit from faster search. When ingested, a certain amount of data is loaded into a cache that makes it super fast to query. The system dynamically adjusts the cache allocated to your project based on how much data you ingest during the period defined by your Search Boost Window.

traffic_filters object[]

traffic filters IDs

id string required

traffic filter ID

linked object

Configuration for linked projects associated with this project

projects map string to object · min properties: 1 required
<string> object
type enum required

The type of the linked project

Values: elasticsearch observability security vectordb
metadata object · min properties: 1

Metadata request for a project with tags and annotations.

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.

<string> 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.

<string> string · min length: 1 · max length: 128 · pattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*$
monitoring object

Configuration for monitoring a project.

logging object

Configuration for project logs.

audit object

Configuration for logs from a specific category.

destination object required

Configuration for destination of logs.

project_id string · pattern: ^[a-z0-9]{32}$ required

ID of the project.

project_type enum

The type of the linked project

Values: elasticsearch observability security vectordb
enabled boolean · default: true

When true (default), logs from this category are delivered to the configured destination. When false, delivery is paused but the configuration is preserved.

ignore_filters object[] · max items: 10

References to logging ignore filters applied to reduce the volume of logs delivered for this category.

id string required

The unique identifier of the ignore filter.

Responses

The created elasticsearch project.

application/json
id string · pattern: ^[a-z0-9]{32}$ required

ID of the project.

name string · min length: 1 · max length: 255 required

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})?$ required

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 required

Unique human-readable identifier for a region in Elastic Cloud.

metadata object required

Additional details about the project.

created_at string · format: date-time required

Date and time when the project was created.

created_by string required

ID of the user.

organization_id string required

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.

<string> 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.

<string> 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.

<string> string · min length: 1 · max length: 128 · pattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*$
cloud_id string required

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 required

traffic filter ID

linked object

Configuration for projects linked to this project

projects map string to object required
<string> object
status enum required

The state of the linked project.

Values: enabled suspended deleted
type enum required

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 required

Configuration for destination of logs.

project_id string · pattern: ^[a-z0-9]{32}$ required

ID of the project.

project_type enum required

The type of the linked project

Values: elasticsearch observability security vectordb
status enum required

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 required

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 required

The unique identifier of the ignore filter.

type enum required

the type of the project

Values: elasticsearch
optimized_for enum required

The purpose for which the hardware of this elasticsearch project is optimized. Also known as the Elasticsearch project subtype.

  • The general_purpose option is suitable for most search use cases. For example, it is the right profile for full-text search, sparse vectors, and dense vectors that use compression such as BBQ. It is used by default when you create projects from the UI.
  • The vector option is recommended only for uncompressed dense vectors (dense_vector fields with int4 or int8 quantization strategies) and high dimensionality. Refer to documentation about billing dimensions for the impact to virtual compute unit (VCU) consumption.
Values: general_purpose vector
search_lake object

Configuration for entire set of capabilities that make the data searchable in Elasticsearch.

search_power integer · min: 28 · max: 3000

Controls how fast searches are against your project data. When ingested, a certain amount of data is loaded into a cache that makes it super fast to query. You can either increase the performance of searches on cached data by adding replicas, or reduce the quantity of cached data by a static factor to save on costs.

boost_window integer · min: 1 · max: 180

Determines how much data can benefit from faster search. When ingested, a certain amount of data is loaded into a cache that makes it super fast to query. The system dynamically adjusts the cache allocated to your project based on how much data you ingest during the period defined by your Search Boost Window.

endpoints object required

The endpoints to access the different apps of the project.

elasticsearch string required

The endpoint to access elasticsearch.

kibana string required

The endpoint to access kibana.

ingest string required

The endpoint to access the Managed OpenTelemetry Collector.

private_endpoints object

Private endpoints (URLs) for Elasticsearch projects when PrivateLink is enabled.

elasticsearch string required

The PrivateLink endpoint URL to access elasticsearch.

kibana string required

The PrivateLink endpoint URL to access kibana.

ingest string required

The PrivateLink endpoint URL to access the Managed OpenTelemetry Collector.

credentials object required

Basic auth credentials to access the Elasticsearch API.

username string required

Basic auth username that can be used to access the Elasticsearch API.

password string · format: password required

Basic auth password that can be used to access the Elasticsearch API.

Response headers

ETag string

Bad request

application/json
errors object[] required
message string required

A human-readable message of the error.

code string required

An identifier for this type of error.

Unprocessable entity

application/json
errors object[] required
message string required

A human-readable message of the error.

code string required

An identifier for this type of error.

Base URL
https://api.elastic-cloud.com