Add a Comment to a Discussion in Edge Drive (REST API: POST)

Updated

This operation adds a comment to an existing discussion for a file or folder in Edge Drive.

Request

Syntax

Send the request using either XML or JSON:

  • XML

    POST <webservice>/drive/file/{fileOrfolderId}/Discussion/{discussionId}/Comment HTTP/1.1

    Host: <host name>

    Accept: application/xml

    Authtoken: <authentication token>

    Content-type: application/xml

    <comments> <content></content> </comments>
  • JSON

    POST <webservice>/drive/file/{fileOrfolderId}/Discussion/{discussionId}/Comment HTTP/1.1

    Host: <host name>

    Accept: application/xml

    Authtoken: <authentication token>

    Content-type: application/json

    {

    "content":

    }

where <webservice> is the root path used to route the API requests to the Web Server.

For more information, see Available Web Services for REST API.

Request Parameters

Name

Description

Required

fileOrfolderId

The GUID of the file or folder for which you want to add a comment. To retrieve the GUID of the file or folder, see View Properties of a File or Folder

Yes

discussionId

The unique ID for the discussion.

Yes

Request Headers

Name

Description

Host

The host name of the Web Server or Web Console used in the API request.

Accept

The format of the response. Valid values are: application/xml or application/json.

Authtoken

The authentication token received after successfully logging on. For details on receiving an authentication token, see Authentication.

Content-type

The media type contained in the request body.

Request Body

An XML element is required. See Syntax. The following table displays the parameters for the request body.

Name

Description

Elements

content

The comment text that you want to add.

comments

Response

Response Parameters

Parameter

Description

Element

depth

The level at which the comment was added. For new discussion, the comment level is 0.

comments

nbReplies

Number of replies for the discussion.

comments

commentId

The unique ID of the comment that you added to the discussion.

comments

content

The comment text.

comments

discussionId

The unique ID for the discussion.

comments

created

The date and time when the discussion was created, specified in Unix time stamp format.

comments

modified

The date and time when the discussion was last modified, specified in Unix time stamp format.

comments

newName

Name of the user entity.

owner

userName

Domain/username of the user who created the discussion.

owner

userId

Unique ID for the user.

owner

Examples

Sample Request

XML

To add a new comment to a discussion.

POST <webservice>/drive/file/145f25d50f1a4dcf9a09b0df393336a2/Discussion/17/Comment HTTP/1.1

Host: client.mydomain.com

Accept: application/xml

Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6

0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f

8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f

40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7

68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323

3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8

Content-type: application/xml

<comments> <content>"New comment"</content> </comments>

JSON

To create a new discussion with a comment.

POST <webservice>/drive/file/145f25d50f1a4dcf9a09b0df393336a2/Discussion/17/Comment HTTP/1.1

Host: client.mydomain.com

Accept: application/json

Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6

0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f

8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f

40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7

68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323

3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8

Content-type: application/json

{

"content":"New comment"

}

Sample Response

XML

<?xml version="1.0" encoding="UTF-8" ?> 

<discussion> <entityType>136</entityType> <comment> <depth>0</depth> <nbReplies>0</nbReplies> <discussionId>17</discussionId> <created>1503363960</created> <commentId>22</commentId> <modified>1503363960</modified> <owner> <newName>user1</newName> <userName>mydomain\user1</userName> <userId>1096</userId> </owner> </comment> <error />

JSON

{

"comment":{

"depth":0,"nbReplies":0,"discussionId":17,"created":1503363960,"commentId":22,"modified":1503363960,"owner":{

"newName":"user1","userName":"mydomain\\user1","userId":1096

}

},"error":{

}

}

Supported Error Codes

Code

Status

Description

400

Bad Request

The request is missing required parameters.

401

Unauthorized

The request did not include an authentication token or the authentication token was expired.

403

Forbidden

The user did not  have permission to access the requested resource.

412

Precondition Failed

Prerequisites are not met. For example, MongoDB database is not installed.