# StateBasic

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.StateBasic/

Basic state info (for normal clients).

- **Full name:** `MFiles.StateBasic`
- **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-id"></a>`id` | `int32` | 1 | The state ID: the item ID of a Workflow State (39) value (value list 8). |
| <a id="f-name"></a>`name` | `string` | 2 | The name of the state. |
| <a id="f-can_current_user_select"></a>`can_current_user_select` | `bool` | 3 | True if the caller can move an object into this state from the `current_state` given in the request. Without `current_state`, every state is true. |
| <a id="f-are_state_permissions_object_specific"></a>`are_state_permissions_object_specific` | `bool` | 4 | Specifies if the selectable flag is affected by pseudo users. If true, the selectable flag can be trusted only if the available state transitions are requested for a specific objver. |
| <a id="f-description"></a>`description` | `string` | 5 | The user description of the state. |

<a id="used-by-methods"></a>

## Used by methods

- [IRPCObjectOperations.GetWorkflowStates](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/GetWorkflowStates/index.md): Gets the states of the given workflow in the appropriate order.
- [IRPCObjectOperations.GetWorkflowStatesAndTransitions](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/GetWorkflowStatesAndTransitions/index.md): Gets the states and transitions of the given workflow.

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

## Used in fields

- [`GetWorkflowStatesResponse.results`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/GetWorkflowStates/index.md#response): States.
- [`GetWorkflowStatesAndTransitionsResponse.states`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/GetWorkflowStatesAndTransitions/index.md#response): All states of the workflow, in order.
