# ClientCapabilities

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

Capabilities of M-Files Client.

- **Full name:** `MFiles.ClientCapabilities`
- **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-property_def_searchability"></a>`property_def_searchability` | `bool` | 1 | Property definitions can be configured searchable or unsearchable. |
| <a id="f-unmanaged_objects"></a>`unmanaged_objects` | `bool` | 2 | Client understands unmanaged objects. |
| <a id="f-extension_authentication_data_push"></a>`extension_authentication_data_push` | `bool` | 3 | Client supports data push for extension authentications. |
| <a id="f-custom_api_data_push"></a>`custom_api_data_push` | `bool` | 4 | Client supports server data push for M-Files API & custom implementations. |
| <a id="f-unknown_file_size"></a>`unknown_file_size` | `bool` | 5 | Client can handle unknown or estimated file size. |
| <a id="f-typed_metadata_suggestions"></a>`typed_metadata_suggestions` | `bool` | 6 | Client can handle metadata suggestions to all M-Files types. |
| <a id="f-long_authentication_attempt_identifier"></a>`long_authentication_attempt_identifier` | `bool` | 7 | The client handles the long (32-byte) authentication attempt identifier in `AuthenticationAttemptIdentifier.data`. |
| <a id="f-reverse_grouping_level"></a>`reverse_grouping_level` | `bool` | 8 | Client supports reverse grouping levels. |
| <a id="f-object_permissions_for_client"></a>`object_permissions_for_client` | `bool` | 9 | Client supports ObjectPermissionsForClient. |
| <a id="f-hierarchical_object_type_properties"></a>`hierarchical_object_type_properties` | `bool` | 10 | Properties with hierarchy for real object types supported. |
| <a id="f-smart_search"></a>`smart_search` | `bool` | 11 | Client supports Smart Search engine type. |
| <a id="f-recurring_notifications"></a>`recurring_notifications` | `bool` | 12 | Client supports recurring notifications. |
| <a id="f-smart_search_facets"></a>`smart_search_facets` | `bool` | 13 | Client supports smart search facets. |
| <a id="f-vault_role_manage_private_views"></a>`vault_role_manage_private_views` | `bool` | 14 | Client supports a vault role for managing private views. |
| <a id="f-allow_all_see_deleted_conflict_objects"></a>`allow_all_see_deleted_conflict_objects` | `bool` | 15 | Client supports that all users can see deleted conflict objects. |
| <a id="f-advanced_password_hashes"></a>`advanced_password_hashes` | `bool` | 16 | Client supports hashing passwords with advanced algorithms, including at least PBKDF2. |
| <a id="f-anonymous_authentication"></a>`anonymous_authentication` | `bool` | 17 | Client supports anonymous authentication. |
| <a id="f-dataset_deleted_condition"></a>`dataset_deleted_condition` | `bool` | 18 | Client supports deleted/not deleted-condition in a dataset definition. |
| <a id="f-unified_password_hashes"></a>`unified_password_hashes` | `bool` | 19 | Client supports transmitting hashing passwords with the same encoding between all gRPC methods. |
| <a id="f-duplicates_view"></a>`duplicates_view` | `bool` | 20 | Client supports the duplicates view. |
| <a id="f-property_action_state_transition_time"></a>`property_action_state_transition_time` | `bool` | 21 | Client supports state transition time setting via state property action. |
| <a id="f-at_mentions"></a>`at_mentions` | `bool` | 22 | Client supports the @mentions in comment texts. |
| <a id="f-additive_permissions_via_automatic_aclcomponents"></a>`additive_permissions_via_automatic_aclcomponents` | `bool` | 23 | Client supports additive permissions via automatic ACL components. |
| <a id="f-vault_level_optimization_jobs"></a>`vault_level_optimization_jobs` | `bool` | 24 | Client supports vault-level optimization jobs. |
| <a id="f-visitor_links_supported"></a>`visitor_links_supported` | `bool` | 25 | Client supports new interface methods for visitor links. |
| <a id="f-object_type_filter_multi_select_views"></a>`object_type_filter_multi_select_views` | `bool` | 26 | Client supports multiple object types as a filter for views and advanced searches. |
| <a id="f-generate_v2_azure_auth_conf_supported"></a>`generate_v2_azure_auth_conf_supported` | `bool` | 27 | Client supports generating authentication configuration for Azure v2.0 endpoint. |
| <a id="f-structure_item_groups_in_export"></a>`structure_item_groups_in_export` | `bool` | 28 | Client supports structure item groups in the export job. |
| <a id="f-aino_search"></a>`aino_search` | `bool` | 29 | Client supports Aino Search engine type. |
| <a id="f-conversation_history"></a>`conversation_history` | `bool` | 30 | Client supports conversation history. |
| <a id="f-generate_login_service_auth_conf"></a>`generate_login_service_auth_conf` | `bool` | 31 | Client supports generating authentication configuration for M-Files Login Service. |
| <a id="f-sub_folders_in_views"></a>`sub_folders_in_views` | `bool` | 32 | Client supports subfolders in views. |
| <a id="f-reverse_references_in_pseudo_user_aces"></a>`reverse_references_in_pseudo_user_aces` | `bool` | 33 | Client supports reverse references in pseudo-user ACEs (Access Control Entries). |
| <a id="f-entity_version_checking_supported"></a>`entity_version_checking_supported` | `bool` | 34 | Client supports entity version numbering to track modification conflicts. |
| <a id="f-workflow_descriptions_supported"></a>`workflow_descriptions_supported` | `bool` | 35 | Client supports workflow descriptions. |
| <a id="f-property_value_metadata_supported"></a>`property_value_metadata_supported` | `bool` | 36 | Client supports setting and retrieving property value metadata. |
| <a id="f-object_type_grouping_for_relationships"></a>`object_type_grouping_for_relationships` | `bool` | 37 | Client supports object type based grouping for relationships. |
| <a id="f-draft_objects"></a>`draft_objects` | `bool` | 38 | Client supports draft objects in discovery results. |

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

## Used by methods

- [IRPCLogin.GetAuthenticationConfiguration](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCLogin/GetAuthenticationConfiguration/index.md): Tells a client, before login, whether to authenticate with an authentication plug-in (single sign-on) and returns the plug-in's client-side configuration.
- [IRPCVaultAdmin.AddAutomaticAzureADConfiguration](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/AddAutomaticAzureADConfiguration/index.md): Creates the automatic Microsoft Entra ID (Azure AD) authentication configuration of the vault from a completed administrator consent sign-in.

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

## Used in fields

- [`ClientData.capabilities`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ClientData/index.md#f-capabilities): Features the client software handles. The server adapts some responses to them, so set only the flags your code implements; leave the rest false.
- [`VaultConnectionInfo.client_capabilities`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.VaultConnectionInfo/index.md#f-client_capabilities): Capabilities of M-Files Client that were reported for the server when the connection (session) was established.
- [`GetAuthenticationConfigurationRequest.capabilities`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCLogin/GetAuthenticationConfiguration/index.md#request): The client's capabilities, as in `ClientData.capabilities`.
- [`AddAutomaticAzureADConfigurationRequest.capabilities`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultAdmin/AddAutomaticAzureADConfiguration/index.md#request): The set of client capabilities describing what the client software supports.
