# IRPCVaultAdmin.GetIndexOptions

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Administration API](https://developer.m-files.com/APIs/gRPC-API/admin/index.md) > [Vault administration](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/index.md)

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

Badges: `Administration API / specialized` `admin` `session` `idempotent`

Lists the search indexes of the vault with their state and the management operations the caller
may run on each.

- **Service:** [Vault administration](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/index.md) `MFiles.IRPCVaultAdmin`
- **gRPC method:** `/MFiles.IRPCVaultAdmin/GetIndexOptions`
- **HTTP (mf-http-grpc):** `POST /grpc/v1/get-index-options`
- **Request:** [`GetIndexOptionsRequest`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/GetIndexOptions/index.md#request)
- **Response:** [`GetIndexOptionsResponse`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/GetIndexOptions/index.md#response)
- **Book and level:** Administration API, specialized
- **Kind:** admin
- **Session:** Required: the session ID from LogIn in the mfiles-session-id-bin metadata.
- **Idempotent:** yes
- **Returns metadata structure version:** no
- **Streaming:** none (unary)

<a id="remarks"></a>

## Remarks

- Requires a vault session and the vault right `see_all_objects` (a normal user gets
  "Access denied"). Read-only.
- `allowed_operations` lists what
  [ExecuteIndexManagementOperation](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/ExecuteIndexManagementOperation/index.md)
  accepts for the index from this caller; a vault administrator without server rights sees only
  `INDEX_MANAGEMENT_OPERATION_REBUILD` on the active indexes.

<a id="request"></a>

## Request: GetIndexOptionsRequest

No fields.

<a id="response"></a>

## Response: GetIndexOptionsResponse

> Nested message fields are expanded to depth 3; follow a type link for deeper levels and for the type's own page.

| Field | Type | Description |
|---|---|---|
| `index_options[]` | repeated [`IndexOptions`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.IndexOptions/index.md) | One item per index: its name, the data it indexes, the search engine, whether it is enabled and active, and the operations the caller may run on it. |
| `index_options[].name` | [`IndexName`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.IndexName/index.md) | The name of the index. |
| `index_options[].name.configuration_name` | `string` | The name of the index configuration. |
| `index_options[].name.repository_connection` | `string` | Identifies the external repository connection. |
| `index_options[].name.configuration_type` | [`IndexConfigurationType`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.IndexConfigurationType/index.md) | The index configuration type (e.g., Shared versus Legacy). Values: `INDEX_CONFIGURATION_TYPE_UNKNOWN` (0), `INDEX_CONFIGURATION_TYPE_LEGACY` (1), `INDEX_CONFIGURATION_TYPE_SHARED` (2), `INDEX_CONFIGURATION_TYPE_ANY` (3). |
| `index_options[].data_type` | [`IndexedDataType`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.IndexedDataType/index.md) | The type of the data the indexer can index. Values: `INDEXED_DATA_TYPE_UNSPECIFIED` (0), `INDEXED_DATA_TYPE_METADATA` (1), `INDEXED_DATA_TYPE_FILE_DATA` (2), `INDEXED_DATA_TYPE_COMBINED` (3). |
| `index_options[].search_engine` | [`SearchEngine`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.SearchEngine/index.md) | Identifies the search engine. Values: `SEARCH_ENGINE_UNSPECIFIED` (0), `SEARCH_ENGINE_DT_SEARCH` (1), `SEARCH_ENGINE_IDOL` (2), `SEARCH_ENGINE_AZURE_SEARCH` (3), `SEARCH_ENGINE_SMART_SEARCH` (4), `SEARCH_ENGINE_AINO_SEARCH` (5), `SEARCH_ENGINE_GOLDFISH` (6). |
| `index_options[].enabled_in_storage` | [`IndexEnabled`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.IndexEnabled/index.md) | The enabled status of the index in the current storage. |
| `index_options[].enabled_in_storage.enabled` | `bool` | If true, this index is enabled. |
| `index_options[].enabled_in_storage.enabled_for_searching` | `bool` | If true, this index is enabled for searching. The general "Enabled" setting must also be true for the index to actually be enabled for searching. |
| `index_options[].enabled_in_storage.enabled_for_indexing` | `bool` | If true, this index is enabled for indexing. The general "Enabled" setting must also be true for the index to actually be enabled for indexing. |
| `index_options[].enabled_effective` | [`IndexEnabled`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.IndexEnabled/index.md) | The effective enabled status. |
| `index_options[].enabled_effective.enabled` | `bool` | If true, this index is enabled. |
| `index_options[].enabled_effective.enabled_for_searching` | `bool` | If true, this index is enabled for searching. The general "Enabled" setting must also be true for the index to actually be enabled for searching. |
| `index_options[].enabled_effective.enabled_for_indexing` | `bool` | If true, this index is enabled for indexing. The general "Enabled" setting must also be true for the index to actually be enabled for indexing. |
| `index_options[].active` | `bool` | True, if the index is set as an active index. |
| `index_options[].multi_repository` | `bool` | True, if the physical index can contain multiple repositories. |
| `index_options[].notifications` | [`INDEXNOTIFICATIONFLAGS`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.INDEXNOTIFICATIONFLAGS/index.md) | Specifies notifications of the given index. |
| `index_options[].notifications.all` | `bool` | Specifies all flags set; Including any future flags. |
| `index_options[].notifications.reindex_required_propertydef_changed` | `bool` | Re-indexing is required, because of changes in property definitions. |
| `index_options[].notifications.reindex_required_language_changed` | `bool` | Re-indexing is required, because new language package has been installed. |
| `index_options[].notifications.reindex_required_generic` | `bool` | Re-indexing is required. |
| `index_options[].notifications.indexing_in_progress` | `bool` | Indexing is in progress. |
| `index_options[].notifications.rebuild_in_progress` | `bool` | Rebuild is in progress. |
| `index_options[].notifications.dtsearch_active_filedata_index_required` | `bool` | Active filedata index is required. |
| `index_options[].notifications.dtsearch_active_metadata_index_required` | `bool` | Active metadata index is required. |
| `index_options[].exists_implicitly` | `bool` | True, if the index exists implicitly. For example, if the index is default index that exists regardless of configuration. |
| `index_options[].allowed_operations` | [`IndexManagementOperationArray`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.IndexManagementOperationArray/index.md) | Operations user is allowed to perform with this index. |
| `index_options[].allowed_operations.index_management_operations[]` | repeated [`IndexManagementOperation`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.IndexManagementOperation/index.md) | An array of the IndexManagementOperation enums. Values: `INDEX_MANAGEMENT_OPERATION_UNKNOWN` (0), `INDEX_MANAGEMENT_OPERATION_REBUILD` (1), `INDEX_MANAGEMENT_OPERATION_REINDEX` (2), `INDEX_MANAGEMENT_OPERATION_ACTIVATE` (3), `INDEX_MANAGEMENT_OPERATION_ENABLE` (4), `INDEX_MANAGEMENT_OPERATION_DISABLE` (5), `INDEX_MANAGEMENT_OPERATION_DELETE` (6). |

<a id="related"></a>

## Related methods

- [ExecuteIndexManagementOperation](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/ExecuteIndexManagementOperation/index.md): Runs a management operation on one search index of the vault: rebuild, re-index, activate, enable, disable or delete.
