# SortRule

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Reference](https://developer.m-files.com/APIs/gRPC-API/Reference/index.md) > [Messages](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.SortRule/

Struct for a sort rule.

- **Full name:** `MFiles.SortRule`
- **Proto file:** [`mfiles/structs.proto`](https://developer.m-files.com/APIs/gRPC-API/downloads/proto/mfiles/structs.proto)

<a id="fields"></a>

## Fields

| Field | Type | Number | Description |
|---|---|---|---|
| <a id="f-key"></a>`key` | `int32` | 1 | What to sort by: a property definition ID (0 or greater; the property must be searchable and not multi-line text), or a special key: -1 (name or title), -13 (created), -14 (last modified), or -102 (object ID, ascending only, not with a full-text condition). |
| <a id="f-options"></a>`options` | [`SortRuleFlags`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.SortRuleFlags/index.md) | 2 | Sort rule flags. Set `sort_descending` for descending order; the default is ascending. |

<a id="used-in-fields"></a>

## Used in fields

- [`SortRuleValueArray.values`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.SortRuleValueArray/index.md#f-values): Sort rules. The first rule has the highest presedence meaning that it is the primary sort rule.
