| GetDocument | Scroll | 
REST URL (POST) https://tenant.thereforeonline.com/theservice/v0001/restun/GetDocument
SOAP Action (POST) http://schemas.therefore.net/webservices/interop/v0001/messages/IThereforeService/GetDocument
Returns the Thereforeâ„¢ document from the server.
Input Message: http://schemas.therefore.net/webservices/interop/v0001/messages/IThereforeService/GetDocument
| Element Name | Element Type | Restrictions | Description | 
| â– parameters | 
 | 
 | |
| â– DocNo | xs:int | mandatory | Sets the document number of the requested document. | 
| â– IsCheckOutStatusNeeded | xs:boolean | 
 | Sets to true if check-out status of the document should be returned in response. | 
| â– IsIndexDataValuesNeeded | xs:boolean | 
 | Sets to true if index data of the document should be returned in response. | 
| â– IsStreamsInfoAndDataNeeded | xs:boolean | 
 | Sets to true if the document stream(s) information with stream(s) binary data should be returned in response. | 
| â– IsStreamsInfoNeeded | xs:boolean | 
 | Sets to true if the document stream(s) information without stream(s) binary data should be returned in response. | 
| â– VersionNo | xs:int | 
 | Sets the version number of the document. Pass 0 to get the latest version. | 
| â– IsAccessMaskNeeded | xs:boolean | 
 | Sets to true if the access mask for requested documents and index data fields should be returned in response. | 
| â– TitleHideCategory | xs:boolean | 
 | Set to true to not to show category name in the document title (see the Title property of the response). Default value is False. | 
| â– IsStreamDataBase64JSONNeeded | xs:boolean | 
 | Set to true to return stream data in the response in the StreamDataBase64JSON property (as a Base64 encoded string). | 
| â–¡ TitleType | 
 | nillable restriction enum (xs:string) - Undef (0) - Default (1) - TitleBar (2) - DocumentName (3) - Mobile (4) - Teams (5) - Export (6) - Send (7) - TreeView (8) - RecycleBin (9) - Logs (10) | Selecting the use case for the document title. There are potentially different title configurations depending on the use case. If this parameter is missing then WSDocTitleType.Default will be used. | 
Output Message: http://schemas.therefore.net/webservices/interop/v0001/messages/IThereforeService/GetDocumentResponse
| Element Name | Element Type | Restrictions | Description | 
| â– parameters | 
 | 
 | |
| â–¡ CheckOutStatus | 
 | nillable | Gets checkout status of the document. See also property IsCheckOutStatusNeeded of the request. | 
| â– CheckOutState | 
 | 
 restriction enum (xs:string) - NotCheckedOut (0) - CheckedOutByCurrentUser (1) - CheckedOutBySomebodyElse (2) | Gets check-out status value. | 
| â–¡ SomebodyElseName | xs:string | nillable | Gets name of the user if the document is checked out by another user (not by the current one). Otherwise it returns nothing. See also CheckOutState. | 
| â– DocNo | xs:int | 
 | Gets number of the document. | 
| â–¡ IndexData | 
 | nillable | Gets index data of the document. See also property IsIndexDataValuesNeeded of the request. | 
| â– CategoryNo | xs:int | mandatory | Gets the number of the category. | 
| â–¡ CtgryName | xs:string | nillable | Gets the name of the category. | 
| â– DocNo | xs:int | 
 | Gets the document number. | 
| â–¡ IndexDataItems | 
 | mandatory nillable | Gets index data items of the document. | 
| ≡ WSIndexDataItem | 
 | list nillable | |
| â–¡ DateIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:dateTime | nillable | Gets or sets date value of the field. Date value should be specified without time zone information (in .net DateTimeKind.Uspecified, xml value like 2002-09-24T00:00:00) or as UTC date time (in .net DateTimeKind.Utc, xml value like 2002-09-24T00:00:00Z). This is mandatory, especially when client and server are located in different time zones. See also the *DataISO8601Value* property. The DataValue property is ignored if the DataISO8601Value property has a value. | 
| â–¡ DataISO8601Value | xs:string | nillable | Gets or sets date value of the field in ISO 8601 format (YYYY-MM-DD, example 2017-07-23). See also the *DataValue* property. The DataValue property is ignored if the DataISO8601Value property has a value. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ IntIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:int | mandatory nillable | Gets or sets the integer value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ LogicalIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:boolean | mandatory nillable | Gets or sets Boolean value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ MoneyIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:double | nillable | Gets or sets the DOUBLE value of the field. Value for the field sould be set either by DataValue or by DecimalDataValue proiperty. DEPRECATED: Use the DecimalDataValue property instead for Thereforeâ„¢ version 2018 and newer. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ DecimalDataValue | xs:decimal | nillable | Gets or sets the DECIMAL value of the field. Value for the field sould be set either by DataValue or by DecimalDataValue proiperty. | 
| â–¡ MultipleKeywordData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | 
 | mandatory nillable | Gets or sets multiple keyword values of the field. | 
| ≡ Keyword | xs:string | list nillable | |
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ KeywordNos | 
 | nillable | Gets or sets multiple keyword numbers of the field. | 
| ≡ KeywordNo | xs:int | list | |
| â–¡ SingleKeywordData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:string | mandatory nillable | Gets or sets a single keyword value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the field name (when you set it use column name + "_Text" suffix. example: for SK field "Department" use "Department_Text" for it's TEXT value) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ StringIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:string | mandatory nillable | Gets or sets the string value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ TableIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | 
 | mandatory nillable | Gets or sets the table value of the field. | 
| ≡ WSTableFieldDataRow | 
 | list nillable | |
| â–¡ DataRowItems | 
 | nillable | Gets or sets the items of the row. If it is set to null for update operation - record with given row number (see RowNo parameter) will be deleted. | 
| ≡ WSTableFieldDataRowItem | 
 | list nillable | |
| â–¡ DateIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:dateTime | nillable | Gets or sets date value of the field. Date value should be specified without time zone information (in .net DateTimeKind.Uspecified, xml value like 2002-09-24T00:00:00) or as UTC date time (in .net DateTimeKind.Utc, xml value like 2002-09-24T00:00:00Z). This is mandatory, especially when client and server are located in different time zones. See also the *DataISO8601Value* property. The DataValue property is ignored if the DataISO8601Value property has a value. | 
| â–¡ DataISO8601Value | xs:string | nillable | Gets or sets date value of the field in ISO 8601 format (YYYY-MM-DD, example 2017-07-23). See also the *DataValue* property. The DataValue property is ignored if the DataISO8601Value property has a value. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ IntIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:int | mandatory nillable | Gets or sets the integer value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ LogicalIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:boolean | mandatory nillable | Gets or sets Boolean value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ MoneyIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:double | nillable | Gets or sets the DOUBLE value of the field. Value for the field sould be set either by DataValue or by DecimalDataValue proiperty. DEPRECATED: Use the DecimalDataValue property instead for Thereforeâ„¢ version 2018 and newer. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ DecimalDataValue | xs:decimal | nillable | Gets or sets the DECIMAL value of the field. Value for the field sould be set either by DataValue or by DecimalDataValue proiperty. | 
| â–¡ SingleKeywordData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:string | mandatory nillable | Gets or sets a single keyword value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the field name (when you set it use column name + "_Text" suffix. example: for SK field "Department" use "Department_Text" for it's TEXT value) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ StringIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:string | mandatory nillable | Gets or sets the string value of the field. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ AccessMask | 
 | nillable | Gets access mask for index data field (column) for connected user. | 
| â– Value | xs:unsignedLong | 
 | Represents the access mask of the permissions. See also: operation GetPermissionConstants. | 
| â–¡ DateTimeIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:dateTime | nillable | Gets or sets UTC date time value of the field. Date value should be specified as UTC date time. The *DataValue* property is ignored if the *DataISO8601Value* property has a value. | 
| â–¡ DataISO8601Value | xs:string | nillable | Gets or sets UTC date time value of the field in ISO 8601 format (example 2018-05-03T14:45:00Z). Date value should be specified as UTC date time. See also the *DataValue* property. The DataValue property is ignored if the DataISO8601Value property has a value. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ RoleAccessMask | 
 | nillable | Gets the role access mask for index data field(column) for connected user. | 
| â– Value | xs:unsignedLong | 
 | Represents the access mask of the permissions. See also: operation GetRolePermissionConstants. | 
| â–¡ RowNo | xs:int | nillable | Gets or sets the number of the row. While updating the data - null value means creating new row. Starts at 0 (zero). | 
| â–¡ AccessIsEditableRow | xs:boolean | nillable | Gets access status for the row for connected user. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ AccessMask | 
 | nillable | Gets access mask for index data field for connected user. | 
| â– Value | xs:unsignedLong | 
 | Represents the access mask of the permissions. See also: operation GetPermissionConstants. | 
| â–¡ DateTimeIndexData | 
 | nillable | |
| â– FieldNo | xs:int | mandatory | Gets or sets the number of the field. Doing request set it to proper field number or to 0 (zero) in order to use the FieldName property instead. | 
| â–¡ DataValue | xs:dateTime | nillable | Gets or sets UTC date time value of the field. Date value should be specified as UTC date time. The *DataValue* property is ignored if the *DataISO8601Value* property has a value. | 
| â–¡ DataISO8601Value | xs:string | nillable | Gets or sets UTC date time value of the field in ISO 8601 format (example 2018-05-03T14:45:00Z). Date value should be specified as UTC date time. See also the *DataValue* property. The DataValue property is ignored if the DataISO8601Value property has a value. | 
| â–¡ FieldName | xs:string | nillable | Gets or sets the name (actualy column name) of the field. Doing request set the FieldNo property to 0 (zero) in order to use specified FieldName. | 
| â–¡ RoleAccessMask | 
 | nillable | Gets the role access mask for index data field for connected user. | 
| â– Value | xs:unsignedLong | 
 | Represents the access mask of the permissions. See also: operation GetRolePermissionConstants. | 
| â– LastChangeTime | xs:dateTime | 
 | Gets the timestamp when the index data was changed. | 
| â–¡ Title | xs:string | nillable | Gets the title of the document. | 
| â– VersionNo | xs:int | 
 | Gets the version number of the document. | 
| â– CaseDefinitionNo | xs:int | 
 | Gets the number of the case definition. | 
| â– CaseNo | xs:int | 
 | Gets the number of the case. | 
| â–¡ LastChangeTimeISO8601 | xs:string | nillable | Gets the timestamp (in ISO 8601 format, UTC) when the index data was changed. | 
| â–¡ StreamsInfo | 
 | nillable | Gets streams information of the document. See also properties IsStreamsInfoNeeded and IsStreamsInfoAndDataNeeded of the request. | 
| ≡ WSStreamInfo | 
 | list nillable | |
| â– AnnotationPage | xs:int | 
 | Gets or sets the annotation page. | 
| â–¡ FileName | xs:string | nillable | Gets or sets file name for the stream. | 
| â–¡ StreamData | xs:base64Binary | nillable | Gets or sets binary data of the file. It uses a base64 encoded string in XML messages and a byte array in JSON messages. If both StreamData and StreamDataBase64JSON are set the value in StreamDataBase64JSON gets ignored. | 
| â– StreamNo | xs:int | 
 | Gets or sets the stream number. | 
| â–¡ StreamDataBase64JSON | xs:string | nillable | Gets or sets binary data of the file as a base64 encoded string (for both XML and JSON encoded messages). If both StreamData and StreamDataBase64JSON are set the value in StreamDataBase64JSON gets ignored. | 
| â–¡ AccessMask | 
 | nillable | DEPRECATED: Use the RoleAccessMask parameter instead. Gets access mask for the document for connected user. | 
| â– Value | xs:unsignedLong | 
 | Represents the access mask of the permissions. See also: operation GetPermissionConstants. | 
| â–¡ RoleAccessMask | 
 | nillable | Gets the role access mask for connected user. | 
| â– Value | xs:unsignedLong | 
 | Represents the access mask of the permissions. See also: operation GetRolePermissionConstants. | 
Legend:
| â– | Not nillable element. | 
| â–¡ | Nillable element. | 
| ≡ | List of elements. | 
| Bold | Mandatory element. |