# SetPropertiesParams

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

Struct for a parameter set for SetPropertiesMultiple.

One object's changes in
[SetPropertiesMultiple](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetPropertiesMultiple/index.md). The fields
mean the same as the fields of
[SetPropertiesRequest](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetProperties/index.md).

- **Full name:** `MFiles.SetPropertiesParams`
- **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-obj_ver"></a>`obj_ver` | [`ObjVer`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ObjVer/index.md) | 1 | The version to change, by number: the checked-out version if the caller has the object checked out, otherwise the latest checked-in version. The LATEST marker is not accepted. |
| <a id="f-allow_modifying_checked_in_object"></a>`allow_modifying_checked_in_object` | `bool` | 2 | True to change a checked-in object: the server checks it out, applies the change and checks it in as one new version. |
| <a id="f-fail_if_not_latest_checked_in_version"></a>`fail_if_not_latest_checked_in_version` | `bool` | 3 | With `allow_modifying_checked_in_object`, true to fail if `obj_ver` is not the latest checked-in version. |
| <a id="f-object_version_guid"></a>`object_version_guid` | `string` | 4 | Optional `version_guid` of the version in `obj_ver`, checked together with `fail_if_not_latest_checked_in_version`. Leave empty normally. |
| <a id="f-set_properties"></a>`set_properties` | repeated [`PropertyValue`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.PropertyValue/index.md) | 5 | Property values to add or replace. Other properties stay unchanged. |
| <a id="f-is_full_set"></a>`is_full_set` | `bool` | 6 | True to treat `set_properties` as the full set and remove every other property the class does not list. `set_properties` must then include Class (100). Leave false. |
| <a id="f-remove_properties"></a>`remove_properties` | repeated `int32` | 7 | Property definition IDs to remove. Properties listed by the class cannot be removed; set them empty instead. |
| <a id="f-options"></a>`options` | [`OBJECTOPFLAGS`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.OBJECTOPFLAGS/index.md) | 8 | Flags that control this operation. |
| <a id="f-acl_enforcing_mode"></a>`acl_enforcing_mode` | [`ACLEnforcingMode`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ACLEnforcingMode/index.md) | 9 | Which ACL the server starts from when it updates the permissions; see SetProperties `acl_mode`. `ACLENFORCING_MODE_DISALLOW_CHANGES` is rejected. Values: `ACLENFORCING_MODE_USE_PREVIOUS` (0), `ACLENFORCING_MODE_USE_PROVIDED` (1), `ACLENFORCING_MODE_RESET_TO_DEFAULT` (2), `ACLENFORCING_MODE_DISALLOW_CHANGES` (3). |
| <a id="f-acl"></a>`acl` | [`AccessControlList`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.AccessControlList/index.md) | 10 | The permissions to use with `ACLENFORCING_MODE_USE_PROVIDED`. Unset otherwise. |

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

## Used by methods

- [IRPCObjectOperations.PromoteUnmanagedObject](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/PromoteUnmanagedObject/index.md): Promotes objects of an external repository (unmanaged objects) to managed M-Files objects by giving them metadata.
- [IRPCObjectOperations.SetPropertiesMultiple](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetPropertiesMultiple/index.md): If the object is currently checked in, a new checked-in version is created. If the object is currently checked out, the changes are applied to the checked-out version.

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

## Used in fields

- [`SetPropertiesMultipleRequest.properties`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/SetPropertiesMultiple/index.md#request): One set of changes per object; see [SetPropertiesParams](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.SetPropertiesParams/index.md). Each object at most once.
- [`PromoteUnmanagedObjectRequest.properties`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCObjectOperations/PromoteUnmanagedObject/index.md#request): Parameters (one set of parameters per object).
