﻿---
title: Sort processor
description: Sort the elements of an array field in ascending or descending order with the Streams sort processor in Streamlang.
url: https://www.elastic.co/elastic/docs-builder/docs/3717/solutions/observability/streams/processors/sort
products:
  - Elastic Cloud Enterprise
  - Elastic Cloud Hosted
  - Elastic Cloud Serverless
  - Elastic Cloud on Kubernetes
  - Elastic Observability
  - Elastic Stack
  - Elasticsearch
  - Kibana
applies_to:
  - Elastic Cloud Serverless: Generally available
  - Elastic Stack: Generally available since 9.4
---

# Sort processor
The **Sort** processor sorts the elements of an array field in ascending or descending order.
To sort an array field:
1. Select **Create** → **Create processor**.
2. Select **Sort** from the **Processor** menu.
3. Set the **Source Field** to the array field you want to sort.
4. Set **Order** to **Ascending** or **Descending**. Defaults to **Ascending**.
5. (Optional) Set **Target field** to write the sorted array to a different field. Leave empty to update the **Source Field**.

This functionality uses the Elasticsearch [Sort processor](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/3717/reference/ingest-processor/sort-processor) internally, but you configure it in Streamlang. Streamlang doesn't always have 1:1 parity with the ingest processor options and behavior. Refer to [Processor limitations and inconsistencies](/elastic/docs-builder/docs/3717/solutions/observability/streams/streamlang#streams-processor-inconsistencies).

## YAML reference

In [YAML mode](/elastic/docs-builder/docs/3717/solutions/observability/streams/parse-and-process#streams-editing-yaml-mode), configure the sort processor using the following parameters. For the complete Streamlang syntax, refer to the [Streamlang reference](https://www.elastic.co/elastic/docs-builder/docs/3717/solutions/observability/streams/streamlang).

| Parameter        | Type    | Required | Description                                                      |
|------------------|---------|----------|------------------------------------------------------------------|
| `from`           | string  | Yes      | Array field to sort.                                             |
| `to`             | string  | No       | Target field for the sorted array. Defaults to the source field. |
| `order`          | string  | No       | Sort order: `asc` or `desc`. Defaults to `asc`.                  |
| `ignore_missing` | boolean | No       | When `true`, skip this processor if the source field is missing. |

```yaml
- action: sort
  from: attributes.tags
  order: desc
```

Given a document with `attributes.tags` set to `["charlie", "alpha", "bravo"]`, the processor updates the field to `["charlie", "bravo", "alpha"]`.