IRPCObjectOperations.DemoteObjects

View as Markdown

Vault API / core write session or assertion returns metadata structure version

Removes the M-Files metadata from promoted objects, turning them back into unmanaged objects of their external repository.

ServiceObjects, versions, properties and files MFiles.IRPCObjectOperations
gRPC method/MFiles.IRPCObjectOperations/DemoteObjects
HTTP (mf-http-grpc)POST /grpc/v1/demote-objects
RequestDemoteObjectsRequest
ResponseDemoteObjectsResponse
Book and levelVault API, core
Kindwrite
SessionRequired: a session (mfiles-session-id-bin metadata) or a session assertion (x-mf-session-assertion metadata).
Idempotentno
Returns metadata structure versionyes (in the mfiles-metadata-version-bin trailer)
Streamingnone (unary)

Remarks

Requires the vault-level right to destroy objects.

Request: DemoteObjectsRequest

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

FieldTypeDescription
obj_ids[]repeated ObjIDObjects.
obj_ids[].typeint32The object type ID, for example 0 for documents. In a lookup value, the value list ID (for a lookup to objects, the object type ID).
obj_ids[].item_idItemIDThe ID of the object within its type, in item_id.internal_id.
obj_ids[].item_id.internal_idint32The ID of the object or value list item.
obj_ids[].item_id.external_repository_idExternalRepositoryIDUsed only for objects in external repositories (external connectors). Leave it unset for objects stored in the vault.

Response: DemoteObjectsResponse

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

FieldTypeDescription
ext_object_infos[]repeated ExtObjectInfoResults.
ext_object_infos[].is_visibleboolTrue if any version of the object is visible to the caller.
ext_object_infos[].object_infoObjectLevelInfoObject-level information, if is_visible is true.
ext_object_infos[].object_info.obj_idObjIDThe object type and ID of the object.
ext_object_infos[].object_info.external_id_statusExtIDStatusThe status of this object's external ID.Values: EXT_IDSTATUS_UNKNOWN (0), EXT_IDSTATUS_EXTERNAL (1), EXT_IDSTATUS_INTERNAL (2), EXT_IDSTATUS_DISCARDED (3), EXT_IDSTATUS_NOT_AVAILABLE (4), EXT_IDSTATUS_EXTERNAL_REDUCED (5).
ext_object_infos[].object_info.external_idstringThe external ID (display ID) of this object. unset means that the external ID is the same as the internal ID.
ext_object_infos[].object_info.checked_out_versionObjVerVersionThe version that is checked out. Version number 0 if the object is not checked out.
ext_object_infos[].object_info.checked_out_to_user_idint32The ID of the user who has the object checked out.
ext_object_infos[].object_info.checked_out_to_user_namestringThe user name of the user who has the object checked out.
ext_object_infos[].object_info.checked_out_to_host_namestringThe host name of the computer to which the object was checked out.
ext_object_infos[].object_info.checked_out_at_utcgoogle.protobuf.TimestampThe timestamp of the moment the object was checked out.
ext_object_infos[].object_info.checked_in_versionObjVerVersionThe latest checked-in version.
ext_object_infos[].object_info.created_at_utcgoogle.protobuf.TimestampThe time when the object was created (same as the PROPERTYDEF_CREATED propertyvalue).
ext_object_infos[].object_info.accessed_by_me_utcgoogle.protobuf.TimestampAccessed by me timestamp. Parallel operations may cause slight inconsistencies in the returned timestamp in rare cases and the precise value shouldn't be relied upon. The observed timestamp may even roll back.
ext_object_infos[].object_info.guidstringThe object GUID, in braces. The same value as GetObjectGUID returns.
ext_object_infos[].object_info.optionsITEMFLAGSBit flags that provide additional information on the object (e.g. is the object deleted or a stub).
ext_object_infos[].object_info.original_vault_guidstringThe GUID of the vault in which the object was originally created.
ext_object_infos[].object_info.original_vault_obj_idObjIDThe original objid in the vault in which the object was originally created.
ext_object_infos[].object_info.associated_view_idItemIDIdentifies the view associated with this object if any.
ext_object_infos[].object_info.external_repository_icon_idstringIf not null, identifies the icon of the object. Currently applicable only to unmanaged objects.
ext_object_infos[].object_info.primary_view_idItemIDIf not null, identifies the primary view of the object that is also the default opening location of the object. Currently applicable only to unmanaged objects.
ext_object_infos[].object_info.capabilitiesOBJECTCAPABILITYFLAGSBit flags that provide information on the object capabilities.
ext_object_infos[].is_latest_version_visibleboolTrue if the latest version of the object is visible to the caller.
ext_object_infos[].latest_versionObjectVersionExWPThe latest version of the object with its properties and ACL, if is_latest_version_visible is true. Some methods (for example UndoCheckout) return it without property values.
ext_object_infos[].latest_version.object_versionObjectVersionExObject info.
ext_object_infos[].latest_version.properties[]repeated PropertyValueProperty values, or an empty array.
ext_object_infos[].latest_version.aclAccessControlListIf set, ACL.
ext_object_infos[].latest_version.current_user_permissionsObjectPermissionsForClientIf set, permissions of the object version.
ext_object_infos[].original_obj_verObjVerThe object version the request named, as sent. The version part may be unset.
ext_object_infos[].original_obj_ver.obj_idObjIDThe object.
ext_object_infos[].original_obj_ver.versionObjVerVersionThe version. Usually OBJ_VER_VERSION_TYPE_SPECIFIC with internal_version.