Update an Elasticsearch project

PATCH /api/v1/serverless/projects/elasticsearch/{id}

Only the fields included in the body of the request will be updated.

Headers

  • If-Match string

    ETag value fetched in a previous GET project request. Used to prevent simultaneous updates

Path parameters

  • id string Required

    The ID of the project

    Format should match the following pattern: ^[a-z0-9]{32}$.

application/json

Body Required

The Elasticsearch project patch body

  • name string

    Descriptive name for a project.

    Minimum length is 1, maximum length is 255.

  • alias string

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

    Minimum length is 1, maximum length is 50. Format should match the following pattern: ^[a-zA-Z]{1}(?:[a-zA-Z0-9-]*[a-zA-Z0-9]{1})?$.

  • search_lake object | null

    Configuration for entire set of capabilities that make the data searchable in Elasticsearch. Pass null to reset configuration to the default values.

    Hide search_lake attributes Show search_lake attributes object | null
    • search_power integer | null

      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. Pass null to reset the Search Power to the default value.

      Minimum value is 28, maximum value is 3000.

    • boost_window integer | null

      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. Pass null to reset the Search Boost Window to the default value.

      Minimum value is 1, maximum value is 180.

  • traffic_filters array[object] | null

    traffic filters IDs

    Hide traffic_filters attribute Show traffic_filters attribute object

    traffic filters association info

    • id string Required

      traffic filter ID

  • linked object | null

    Configuration for projects linked to this project

    Additional properties are NOT allowed.

    Hide linked attribute Show linked attribute object | null
    • projects object
      Hide projects attribute Show projects attribute object
      • * object | null Additional properties

        Details of the linked project

        Additional properties are NOT allowed.

        Hide * attribute Show * attribute object | null
        • type string Required

          The type of the linked project

          Values are elasticsearch, observability, security, or vectordb.

  • metadata object

    Metadata about the project

    Additional properties are NOT allowed.

    Hide metadata attributes Show metadata attributes object
    • tags object

      Tags that need to be updated for a project. The maximum number of tags that can be updated is 64.

      Hide tags attribute Show tags attribute object
      • * string | null Additional properties

        Minimum length is 1, maximum length is 128. Format should match the following pattern: ^[a-z0-9][a-z0-9_-]*$.

    • annotations object

      Annotations to set or delete on a project. A value sets or overwrites the key, and null deletes it. Keys that are left out are unchanged. After the patch, a project can have at most 64 annotations.

      Hide annotations attribute Show annotations attribute object
      • * string | null Additional properties

        Minimum length is 1, maximum length is 128. Format should match the following pattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*$.

  • monitoring object | null

    Configuration for monitoring a project. Pass null to reset all monitoring configuration.

    Additional properties are NOT allowed.

    Hide monitoring attribute Show monitoring attribute object | null
    • logging object | null

      Configuration for project logs. Pass null to reset all log configuration.

      Additional properties are NOT allowed.

      Hide logging attribute Show logging attribute object | null
      • audit object | null

        Configuration for logs from a specific category. Pass as null to reset configuration for this category of logs.

        Additional properties are NOT allowed.

        Hide audit attributes Show audit attributes object | null
        • destination object

          Configuration for destination of logs.

          Additional properties are NOT allowed.

          Hide destination attributes Show destination attributes object
          • project_id string Required

            ID of the project.

            Format should match the following pattern: ^[a-z0-9]{32}$.

          • project_type string

            The type of the linked project

            Values are elasticsearch, observability, security, or vectordb.

        • enabled boolean

          When true, logs from this category are delivered to the configured destination. When false, delivery is paused but the configuration is preserved. Omit to leave the current value unchanged.

        • ignore_filters array[object] | null

          Named ignore filters applied to reduce the volume of logs delivered for this category. Can be passed as null to remove all ignore filters for this category.

          Not more than 10 elements.

          Hide ignore_filters attribute Show ignore_filters attribute object

          Reference to a logging ignore filter applied to a logging category.

          • id string Required

            The unique identifier of the ignore filter.

Responses

  • 200 application/json

    The updated Elasticsearch project.

    Hide headers attribute Show headers attribute
    • ETag string
    Hide response attributes Show response attributes object

    An Elasticsearch serverless project.

    • id string Required

      ID of the project.

      Format should match the following pattern: ^[a-z0-9]{32}$.

    • name string Required

      Descriptive name for a project.

      Minimum length is 1, maximum length is 255.

    • alias string Required

      A domain label compatible with RFC-1035 standards. Project alias with a unique suffix added by the system to avoid naming conflicts.

      Minimum length is 8, maximum length is 57. Format should match the following pattern: ^[a-zA-Z]{1}(?:[a-zA-Z0-9-]*[a-zA-Z0-9]{1})?$.

    • region_id string Required

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

    • metadata object Required

      Additional details about the project.

      Hide metadata attributes Show metadata attributes object
      • created_at string(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(date-time)

        Date and time when the project was suspended.

      • suspended_reason string

        Reason why the project was suspended.

      • tags object

        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.

        Hide tags attribute Show tags attribute object
        • * string Additional properties

          Minimum length is 1, maximum length is 128. Format should match the following pattern: ^[a-z0-9][a-z0-9_-]*$.

      • system_tags object

        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.

        Hide system_tags attribute Show system_tags attribute object
        • * string Additional properties

          Minimum length is 1, maximum length is 128. Format should match the following pattern: ^[a-z0-9][a-z0-9_-]*$.

      • annotations object

        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.

        Hide annotations attribute Show annotations attribute object
        • * string Additional properties

          Minimum length is 1, maximum length is 128. Format should match the following 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 array[object]

      traffic filters IDs

      Hide traffic_filters attribute Show traffic_filters attribute object

      traffic filters association info

      • id string Required

        traffic filter ID

    • linked object

      Configuration for projects linked to this project

      Additional properties are NOT allowed.

      Hide linked attribute Show linked attribute object
      • projects object Required
        Hide projects attribute Show projects attribute object
        • * object Additional properties
          Hide * attributes Show * attributes object
          • status string Required

            The state of the linked project.

            Values are enabled, suspended, or deleted.

          • type string Required

            The type of the linked project

            Values are elasticsearch, observability, security, or vectordb.

    • monitoring object

      Configuration for monitoring a project.

      Hide monitoring attribute Show monitoring attribute object
      • logging object

        Configuration for project logs.

        Hide logging attribute Show logging attribute object
        • audit object

          Configuration for logs from a specific category.

          Hide audit attributes Show audit attributes object
          • destination object Required

            Configuration for destination of logs.

            Hide destination attributes Show destination attributes object
            • project_id string Required

              ID of the project.

              Format should match the following pattern: ^[a-z0-9]{32}$.

            • project_type string Required

              The type of the linked project

              Values are elasticsearch, observability, security, or vectordb.

            • status string 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 are enabled, suspended, or 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 array[object]

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

            Hide ignore_filters attribute Show ignore_filters attribute object

            Reference to a logging ignore filter applied to a logging category.

            • id string Required

              The unique identifier of the ignore filter.

    • type string Required

      the type of the project

      Value is elasticsearch.

    • optimized_for string 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 are general_purpose or vector.

      Elasticsearch Serverless billi...
    • search_lake object

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

      Hide search_lake attributes Show search_lake attributes object
      • search_power integer

        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.

        Minimum value is 28, maximum value is 3000.

      • boost_window integer

        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.

        Minimum value is 1, maximum value is 180.

    • endpoints object Required

      The endpoints to access the different apps of the project.

      Hide endpoints attributes Show endpoints attributes object
      • 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.

      Hide private_endpoints attributes Show private_endpoints attributes object
      • 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.

  • 404 application/json

    Not Found

    Hide response attribute Show response attribute object
    • errors array[object] Required

      An error response returned by the API.

      Hide errors attributes Show errors attributes object

      An error response returned by the API.

      • message string Required

        A human-readable message of the error.

      • code string Required

        An identifier for this type of error.

  • 409 application/json

    Conflict

    Hide response attribute Show response attribute object
    • errors array[object] Required

      An error response returned by the API.

      Hide errors attributes Show errors attributes object

      An error response returned by the API.

      • message string Required

        A human-readable message of the error.

      • code string Required

        An identifier for this type of error.

  • 412 application/json

    Precondition failed

    Hide response attribute Show response attribute object
    • errors array[object] Required

      An error response returned by the API.

      Hide errors attributes Show errors attributes object

      An error response returned by the API.

      • message string Required

        A human-readable message of the error.

      • code string Required

        An identifier for this type of error.

PATCH /api/v1/serverless/projects/elasticsearch/{id}
curl \
 --request PATCH 'https://api.elastic-cloud.com/api/v1/serverless/projects/elasticsearch/{id}' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --header "If-Match: string" \
 --data '{
  "name": "Example project"
}'
Request example
{
  "name": "Example project"
}