Files
=====

.. _FilesRoot:

FilesRoot
---------

Dataroom's `projectfiles` collection

.. code-block:: json

 message FilesRoot {
  string id = 1;
  string dataroom_id = 2;
  string name = 3;
  string type = 4;
  string document_class = 5;
  optional string author = 6;
  string title = 7;
  string path = 8;
  string version = 9;
  google.protobuf.Timestamp creation_date = 10;
  google.protobuf.Timestamp modification_date = 11;
  string icon = 12;
  uint32 num_children = 13; // collections only => subDocs
  EffectivePermission effective_permission = 14;
  string description = 15;
  ItemType item_type = 31;

  optional uint32 sub_docs = 40;
  optional uint64 sub_size = 41;

  optional string parent_id = 42;
 }

+--------------------------+-------------------------------+-----------------------------+
|  Field                   | Type                          | Description                 |
+==========================+===============================+=============================+
| ``id``                   | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``dataroom_id``          | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``name``                 | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``type``                 | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``document_class``       | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``author``               | ``string``                    | **Optional**                |
+--------------------------+-------------------------------+-----------------------------+
| ``title``                | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``path``                 | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``version``              | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``creation_date``        | ``google.protobuf.Timestamp`` |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``modification_date``    | ``google.protobuf.Timestamp`` |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``icon``                 | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``num_children``         | ``uint32``                    | collections only => subDocs |
+--------------------------+-------------------------------+-----------------------------+
| ``effective_permission`` | ``EffectivePermission``       |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``description``          | ``string``                    |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``item_type``            | ``ItemType``                  |                             |
+--------------------------+-------------------------------+-----------------------------+
| ``sub_docs``             | ``uint32``                    | **Optional**                |
+--------------------------+-------------------------------+-----------------------------+
| ``sub_size``             | ``uint64``                    | **Optional**                |
+--------------------------+-------------------------------+-----------------------------+
| ``parent_id``            | ``string``                    | **Optional**                |
+--------------------------+-------------------------------+-----------------------------+

.. _FilesItem:
   
FilesItem
---------

Basic Files Item

.. code-block:: json

 message FilesItem {
  oneof item {
    Collection collection = 1;
    Document document = 2;
    FilesRoot files_root = 4;
    Bookmark bookmark = 5;
    Shortcut shortcut = 6;
    Meeting meeting = 7;
    MeetingTopic meeting_topic = 8;
    MeetingTopicMinute meeting_topic_minute = 9;
    MeetingVote meeting_vote = 10;
    NFSendUploadedBundle send_uploaded_bundle = 11;
    CommentDr comment_dr = 12;
    Question question = 13;
    Answer answer = 14;
  }
 }

+--------------------------+--------------------------+-------------+
|  Field                   | Type                     | Description |
+==========================+==========================+=============+
| ``collection``           | ``Collection``           |             |
+--------------------------+--------------------------+-------------+
| ``document``             | ``Document``             |             |
+--------------------------+--------------------------+-------------+
| ``files_root``           | ``FilesRoot``            |             |
+--------------------------+--------------------------+-------------+
| ``bookmark```            | ``Bookmark``             |             |
+--------------------------+--------------------------+-------------+
| ``shortcut```            | ``Shortcut``             |             |
+--------------------------+--------------------------+-------------+
| ``meeting``              | ``Meeting``              |             |
+--------------------------+--------------------------+-------------+
| ``meeting_topic``        | ``MeetingTopic``         |             |
+--------------------------+--------------------------+-------------+
| ``meeting_topic_minute`` | ``MeetingTopicMinute``   |             |
+--------------------------+--------------------------+-------------+
| ``meeting_vote``         | ``MeetingVote``          |             |
+--------------------------+--------------------------+-------------+
| ``send_uploaded_bundle`` | ``NFSendUploadedBundle`` |             |
+--------------------------+--------------------------+-------------+
| ``comment_dr``           | ``CommentDr``            |             |
+--------------------------+--------------------------+-------------+
| ``question``             | ``Question``             |             |
+--------------------------+--------------------------+-------------+
| ``answer``               | ``Answer``               |             |
+--------------------------+--------------------------+-------------+

.. _FilesItemProperties:

FilesItemProperties
-------------------

Holds the properties of a FilesItem

.. code-block:: json

 message FilesItemProperties {
  oneof item {
    CollectionProperties collection = 1;
    DocumentProperties document = 2;
    BookmarkProperties bookmark = 5;
    ShortcutProperties shortcut = 6;
  }
 }

+----------------+--------------------------+--------------------------------------------------------+
|  Field         | Type                     | Description                                            |
+================+==========================+========================================================+
| ``collection`` | ``CollectionProperties`` | See :ref:`CollectionProperties <CollectionProperties>` |
+----------------+--------------------------+--------------------------------------------------------+
| ``document``   | ``DocumentProperties``   | See :ref:`DocumentProperties <DocumentProperties>`     |
+----------------+--------------------------+--------------------------------------------------------+
| ``bookmark``   | ``BookmarkProperties``   | See :ref:`BookmarkProperties <BookmarkProperties>`     |
+----------------+--------------------------+--------------------------------------------------------+
| ``shortcut``   | ``ShortcutProperties``   | See :ref:`ShortcutProperties <ShortcutProperties>`     |
+----------------+--------------------------+--------------------------------------------------------+