# DocClass

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

Struct for a document class in a vault.

- **Full name:** `MFiles.DocClass`
- **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-value_list_item"></a>`value_list_item` | [`ValueListItem`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ValueListItem/index.md) | 1 | Value list item representing this document class. |
| <a id="f-workflow"></a>`workflow` | `int32` | 2 | The default workflow of the document class, or zero if there is no default workflow. |
| <a id="f-object_type"></a>`object_type` | `int32` | 3 | The object type with which this class is used. |
| <a id="f-is_predefined"></a>`is_predefined` | `bool` | 4 | True if this is a predefined class (cannot be deleted, editing is restricted). |
| <a id="f-force_workflow"></a>`force_workflow` | `bool` | 5 | True if the use of the workflow with this class is enforced. |
| <a id="f-name_property_def"></a>`name_property_def` | `int32` | 6 | The ID of the property definition that represents the name of the document or other object. Typically PROPERTYDEF_TITLE (0). |
| <a id="f-object_type_specific_properties"></a>`object_type_specific_properties` | [`ObjectTypeSpecificClassContentUnion`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ObjectTypeSpecificClassContentUnion/index.md) | 7 | Additional object type specific class content. |
| <a id="f-signature_settings_for_new_objects"></a>`signature_settings_for_new_objects` | [`ElectronicSignatureSettings`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ElectronicSignatureSettings/index.md) | 8 | The electronic signature settings for creating an electronic signature for new objects. Reserved for future improvements. |
| <a id="f-aliases"></a>`aliases` | `string` | 9 | Semicolon-separated list of semantic aliases. |

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

## Used by methods

- [IRPCPropertyDefsAdmin.AddObjectClass](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCPropertyDefsAdmin/AddObjectClass/index.md): Creates a class with its property associations.
- [IRPCPropertyDefsAdmin.GetObjectClasses](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCPropertyDefsAdmin/GetObjectClasses/index.md): Gets the administrative definitions of all classes.
- [IRPCPropertyDefsAdmin.ModifyObjectClass](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCPropertyDefsAdmin/ModifyObjectClass/index.md): Saves a changed class and, optionally, its property associations.

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

## Used in fields

- [`GetObjectClassesResponse.values`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCPropertyDefsAdmin/GetObjectClasses/index.md#response): One [DocClass](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.DocClass/index.md) per class. The class ID is `value_list_item.item_info.obj_id.item_id.internal_id`.
- [`AddObjectClassRequest.doc_class`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCPropertyDefsAdmin/AddObjectClass/index.md#request): The new class. The item ID and GUID in `value_list_item` are ignored and assigned by the server; `object_type` sets the object type of the class.
- [`ModifyObjectClassRequest.doc_class`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCPropertyDefsAdmin/ModifyObjectClass/index.md#request): The complete new class; `value_list_item.item_info.obj_id.item_id.internal_id` identifies it.
