---
title: "Create or update a stream"
method: PUT
path: "/api/streams/{name}"
tags: ["streams"]
---

# Create or update a stream

`PUT /api/streams/{name}`

**Spaces method and path for this operation:**

<div><span class="operation-verb put">put</span>&nbsp;<span class="operation-path">/s/{space_id}/api/streams/{name}</span></div>

Refer to [Spaces](https://www.elastic.co/docs/deploy-manage/manage-spaces) for more information.

Creates or updates a stream definition. Classic streams can not be created through this API, only updated<br/><br/>[Required authorization] Route required privileges: manage_stream.

## Path parameters

- `name` string, required

## Headers

- `kbn-xsrf` string, required

## Request body

- union
  - KibanaHTTPAPIsWiredStreamUpsertRequest
    - `dashboards` string[], required
    - `rules` string[], required
    - `stream` object, required
      - `description` string, required
      - `ingest` object, required
        - `failure_store` union, required
          - object
            - `inherit` object, required
          - object
            - `disabled` object, required
          - object
            - `lifecycle` object, required
              - …
          - object
            - `lifecycle` object, required
              - …
        - `lifecycle` union, required
          - object
            - `dsl` object, required
              - …
          - object
            - `ilm` object, required
              - …
          - object
            - `inherit` object, required
        - `processing` object, required
          - `steps` KibanaHTTPAPIsStreamlangStep[], required
            - union
              - …
        - `settings` object, required
          - `index.number_of_replicas` object
            - `value` number, required
          - `index.number_of_shards` object
            - `value` number, required
          - `index.refresh_interval` object
            - `value` union, required
              - …
        - `wired` object, required
          - `draft` boolean
          - `fields` KibanaHTTPAPIsFieldDefinition, required — unresolved $ref
          - `routing` object[], required
            - `destination` string, required — A non-empty string.
            - `draft` boolean
            - `status` 'enabled' | 'disabled'
            - `where` union, required — The root condition object. It can be a simple filter or a combination of other conditions.
              - …
      - `query_streams` object[]
        - `name` string, required
      - `type` 'wired', required
  - KibanaHTTPAPIsClassicStreamUpsertRequest
    - `dashboards` string[], required
    - `rules` string[], required
    - `stream` object, required
      - `description` string, required
      - `ingest` object, required
        - `classic` object, required
          - `field_overrides` KibanaHTTPAPIsClassicFieldDefinition
        - `failure_store` union, required
          - object
            - `inherit` object, required
          - object
            - `disabled` object, required
          - object
            - `lifecycle` object, required
              - …
          - object
            - `lifecycle` object, required
              - …
        - `lifecycle` union, required
          - object
            - `dsl` object, required
              - …
          - object
            - `ilm` object, required
              - …
          - object
            - `inherit` object, required
        - `processing` union, required
          - object
            - `steps` KibanaHTTPAPIsStreamlangStep[], required
              - …
          - object
            - `processors` object[], required
              - …
        - `settings` object, required
          - `index.number_of_replicas` object
            - `value` number, required
          - `index.number_of_shards` object
            - `value` number, required
          - `index.refresh_interval` object
            - `value` union, required
              - …
      - `query_streams` object[]
        - `name` string, required
      - `type` 'classic', required
  - KibanaHTTPAPIsQueryStreamUpsertRequest
    - `dashboards` string[], required
    - `rules` string[], required
    - `stream` object, required
      - `description` string, required
      - `field_descriptions` object
      - `query` object, required
        - `esql` string, required
        - `view` string, required
      - `query_streams` object[]
        - `name` string, required
      - `type` 'query', required

## Response `200`

The stream was created or updated successfully.

---

[API](https://skmtc.net/elastic/apis/kibana-apis.md) · [All operations](https://skmtc.net/elastic/apis/kibana-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/elastic/kibana-apis/revisions/0ccc4e4f608a/schema)
