IRPCObjectTypesAdmin.AddObjectTypeItem
Administration API / specialized admin session
Adds an item to a value list as an administrator.
| Service | Object type administration MFiles.IRPCObjectTypesAdmin |
|---|---|
| gRPC method | /MFiles.IRPCObjectTypesAdmin/AddObjectTypeItem |
| HTTP (mf-http-grpc) | POST /grpc/v1/add-object-type-item |
| Request | AddObjectTypeItemRequest |
| Response | AddObjectTypeItemResponse |
| Book and level | Administration API, specialized |
| Kind | admin |
| Session | Required: the session ID from LogIn in the mfiles-session-id-bin metadata. |
| Idempotent | no |
| Returns metadata structure version | no |
| Streaming | none (unary) |
Remarks
- Requires
change_metadata_structureandlicense_allows_modifications; the list's own permissions are not checked. Users without these rights use AddValueListItemFromClient. - Only for plain value lists. A real object type fails with "Not found." (create objects with IRPCObjectOperations); classes (1), class groups (2) and list 18 are refused with an invalid-argument error, and external lists are refused.
has_parentis allowed only in hierarchical lists,has_owneronly in lists that are not hierarchical.- In Traditional folders (list 4) the call returns an existing matching folder instead of adding a duplicate.
Request: AddObjectTypeItemRequest
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 |
|---|---|---|
vlitem | ValueListItem | The item to add. item_info.obj_id.type names the value list; the item ID and GUID are ignored and assigned by the server. |
vlitem.item_info | ItemInfo | The item's identity and name: obj_id.type is the value list ID, obj_id.item_id.internal_id the item ID (unique within the list only), plus name, guid, external_id and flags. options.is_deleted marks a deleted item. |
vlitem.item_info.obj_id | ObjID | The object id or value list item id. Includes the object type or value list id. |
vlitem.item_info.name | string | The name of the item. |
vlitem.item_info.external_id_status | ExtIDStatus | The status of this item'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). |
vlitem.item_info.external_id | string | The external ID (display ID) of this item. unset means that the external ID is the same as the internal ID. |
vlitem.item_info.guid | string | GUID for the item. |
vlitem.item_info.options | ITEMFLAGS | Bit flags that provide additional information on the item (e.g. is the object deleted). |
vlitem.item_info.external_repository_icon_id | string | The ID of the item's icon. |
vlitem.has_parent | bool | True if the item has a parent item in the same (hierarchical) list. |
vlitem.has_owner | bool | True if the item belongs to an item of the owner list (ValueList.owner_object_type). |
vlitem.parent_id | int32 | With has_parent, the item ID of the parent item; otherwise ignored. |
vlitem.owner_id | int32 | With has_owner, the item ID of the owner item in the owner list. |
vlitem.owner_name | string | The name of the owner item. |
vlitem.automatic_permissions | AutomaticPermissions | If set, specifies the automatic permissions for an object for which the user selects this item. |
vlitem.automatic_permissions.permissions | NamedACL | The automatic permissions for an object for which the user selects this item. |
vlitem.automatic_permissions.is_default | bool | True if these automatic permissions are not private i.e. they are not directly specified for (owned by) this item but they come from somewhere else, e.g. from the default/common automatic permissions of the object type. |
vlitem.automatic_permissions.use_object_permissions | bool | If true the object/item's own permissions are used as its automatic permissions. |
vlitem.icon | Bytes | If set, contains the icon of this item in .ICO format. |
vlitem.icon.value | bytes | Array of bytes. |
Response: AddObjectTypeItemResponse
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 |
|---|---|---|
result | ValueListItem | The item as stored, with its new ID, GUID and default automatic permissions. |
result.item_info | ItemInfo | The item's identity and name: obj_id.type is the value list ID, obj_id.item_id.internal_id the item ID (unique within the list only), plus name, guid, external_id and flags. options.is_deleted marks a deleted item. |
result.item_info.obj_id | ObjID | The object id or value list item id. Includes the object type or value list id. |
result.item_info.name | string | The name of the item. |
result.item_info.external_id_status | ExtIDStatus | The status of this item'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). |
result.item_info.external_id | string | The external ID (display ID) of this item. unset means that the external ID is the same as the internal ID. |
result.item_info.guid | string | GUID for the item. |
result.item_info.options | ITEMFLAGS | Bit flags that provide additional information on the item (e.g. is the object deleted). |
result.item_info.external_repository_icon_id | string | The ID of the item's icon. |
result.has_parent | bool | True if the item has a parent item in the same (hierarchical) list. |
result.has_owner | bool | True if the item belongs to an item of the owner list (ValueList.owner_object_type). |
result.parent_id | int32 | With has_parent, the item ID of the parent item; otherwise ignored. |
result.owner_id | int32 | With has_owner, the item ID of the owner item in the owner list. |
result.owner_name | string | The name of the owner item. |
result.automatic_permissions | AutomaticPermissions | If set, specifies the automatic permissions for an object for which the user selects this item. |
result.automatic_permissions.permissions | NamedACL | The automatic permissions for an object for which the user selects this item. |
result.automatic_permissions.is_default | bool | True if these automatic permissions are not private i.e. they are not directly specified for (owned by) this item but they come from somewhere else, e.g. from the default/common automatic permissions of the object type. |
result.automatic_permissions.use_object_permissions | bool | If true the object/item's own permissions are used as its automatic permissions. |
result.icon | Bytes | If set, contains the icon of this item in .ICO format. |
result.icon.value | bytes | Array of bytes. |
Related methods
- IRPCValueLists.AddValueListItemFromClient -- Adds a new item to a value list, as a user.
- AddObjectType -- Creates a new object type or value list.