Document

The document class contains methods and data for using documents just as you would in the UI. Everything can be modified such as a document's content, subject, tags, and comments. Metadata is available, e.g. the author, the publish date, the number of people following the document, etc.

Examples:
Example JSON

JSON including important fields and a Document's resources. See the tables below for a list of all fields and resources.

  {
   "type" : "document",
   "status" : "published",
   "subject" : "My First Document",
   "content" : {
      "type" : "text/html",
      "text" : "<p>Some interesting document text</p>"
    },
   "contentImages" : [ {
      "id" : "1055",
      "contentType" : "image/jpeg",
      "name" : "pic.jpeg",
      "ref" : "http://example.jiveon.com/api/core/v3/attachments/file/1055/data",
      "size" : 5953,
      "width" : 251,
      "height" : 201,
      "type" : "image"
   } ],
   "authorship" : "open",
   "author" : {
      "displayName" : "Administrator",
   },
   "visibility" : "all",
   "restrictComments" : false,
   "viewCount" : 0,
   "replyCount" : 0,
   "followerCount" : 0,
   "likeCount" : 0,
   "published" : "2012-06-27T22:53:30.370+0000",
   "updated" : "2012-06-27T22:53:30.491+0000",
   "categories" : [ "Cars" ],
   "tags" : [ ],
   "attachments" : [ ],
   "resources" : {
      "versions" : {
          "ref" : "http://example.jiveon.com/api/core/v3/versions/1006",
          "allowed" : [ "GET" ]
      },
      "likes" : {
          "ref" : "http://example.jiveon.com/api/core/v3/contents/1006/likes",
          "allowed" : [ "GET" ]
      },
      "read" : {
          "ref" : "http://example.jiveon.com/api/core/v3/contents/1006/read",
          "allowed" : [ "DELETE", "POST" ]
      },
      "self" : {
          "ref" : "http://example.jiveon.com/api/core/v3/contents/1006",
          "allowed" : [ "DELETE", "GET", "PUT" ]
      },
      "html" : {
          "ref" : "http://example.jiveon.com/docs/DOC-1001",
          "allowed" : [ "GET" ]
      },
      "attachments" : {
          "ref" : "http://example.jiveon.com/api/core/v3/attachments/contents/1006",
          "allowed" : [ "GET", "POST" ]
      },
      "followingIn" : {
          "ref" : "http://example.jiveon.com/api/core/v3/contents/1006/followingIn",
          "allowed" : [ "GET" ]
      },
      "comments" : {
          "ref" : "http://example.jiveon.com/api/core/v3/contents/1006/comments",
          "allowed" : [ "GET", "POST" ]
      }
   },
 "id" : "1001"

 }
Simple Document Creation

POST to /contents creates a new document. The minimum set of fields you must include are:

 {
  "content":
      {
      "type": "text/html",
      "text": "<body><p>Some interesting text</p></body>"
      },
  "subject": "New Document",
  "type": "document"
  }
See Document Use Cases for full details on creating documents programmatically.

Retrieve Document

GET to /contents/{contentID} to return a given document. The service URL can be found in the self resource under resources.

Update Document

After you have retrieved a document and made the desired changes, PUT to /contents/{contentID} passing the updated information in the request body. The service URL can be found in the self resource under resources.

Delete Document

DELETE to /contents/{contentID} to delete the specified document. The service URL can be found in the self resource under resources.

Retrieve Document Comments

GET to /contents/{contentID}/comments to return comments on a given document. This service allows you to retrieve some or all comments depending on the parameters. The service URL can be found in the comments resource under resources.

See Document Use Cases for full details on document comments.

Retrieve document versions

GET to /versions/{contentID} to return information about versions of a given document. Every time a document gets updated, a new version will be created. After you got the information from this service, it is possible to restore a previous version by doing a POST to /versions/{contentID}/{versionID}.

Fields

FieldTypeMode Description
abuseCountIntegerread-only

Number of abuse reports associated with this content object.

approversPerson[]optional

List of people who are approvers on the content of this document. This functionality is deprecated; in the future, the server will return a 400 when trying to create a document with approvers.

attachmentsAttachment[]optional

List of attachments to this document.

authorPersonread-only

Author of this content object.

authorsPerson[]optional

List of people who are authors on this content. Authors are allowed to edit the content. This value is used only when authorship is limited.

authorshipStringoptionalThe authorship policy for this content.
  • open - anyone with appropriate permissions can edit the content. Default when visibility is place.
  • author - only the author can edit the content. Default when visibility is hidden or all.
  • limited - only those users specified by authors can edit the content. If authors was not specified then users will be used instead when visibility is people. Default when visibility is people.
categoriesString[]optional

Categories associated with this object. Places define the list of possible categories.

contentContentBodyrequired

Content of this content object.

contentIDStringread-only

Internal Jive ID associated with the content.

contentImagesImage[]read-only

A list of Image objects providing metadata about images embedded within this content.

contentVideosContentVideo[]read-only

A list of ContentVideo objects providing metadata about videos embedded within this content.

editingByPersonread-only

The person currently editing this document, meaning that it's locked. If not present, nobody is editing.

extendedAuthorsPerson[]optional

List of people who have been granted authorship on this content, who would normally not have access to it. Extended authors are allowed to edit the content. This value is used only when authorship is limited.

favoriteCountIntegerread-only

Number of people who have bookmarked this object.

Availability:

Will be present only for object types that support being bookmarked.

Since: 3.11
followerCountIntegerread-only

Number of people following this object.

Availability:

Will be present only for object types that support being followed.

fromQuestStringoptional

Flag indicating that this document was created as part of a quest.

helpfulCountIntegerread-onlyNumber of people who marked this document as helpful
Availability:

Will be present for documents that have been marked helpful, if helpful acclaim is enabled

highlightBodyStringread-only

Highlight snippet of a search match in the body or description.

Availability:

Will be present in search results only.

highlightSubjectStringread-only

Highlight snippet of a search match in the subject or name.

Availability:

Will be present in search results only.

highlightTagsStringread-only

Highlight snippet of a search match in tags.

Availability:

Will be present in search results only.

iconCssStringread-only

CSS Style to locate icon within sprite.

idStringread-only

Identifier (unique within an object type and Jive instance) of this object. This field is internal to Jive and should not be confused with contentID or placeID used in URIs.

lastActivityDateISO 8601 Dateread-only

Date and time when this had its last activity.

Since: 3.12
likeCountIntegerread-only

Number of people who have liked this object.

Availability:

Will be present only for object types that support being liked.

onBehalfOfOnBehalfOfoptional

Information that is available when the content was posted by the author on behalf of another person. This person may be an anonymous user, an unknown user with just an email address or another user of Jive.

Since: 3.12
outcomeCountsObjectread-only

Map of structured outcome type names that have been assigned to this content object, and a count of how many times they appear. For top level content objects like Discussion, Document, File, and Post, outcomes assigned to child comments and messages will also be included.

Availability:

Only available for content object types that support structured outcomes

Since: 3.3
outcomeTypeNamesString[]read-only

List of structured outcome type names that have been assigned to this content object. For top level content objects like Discussion, File, and Document, outcomes assigned to child comments and messages will also be included.

Availability:

Only available for content object types that support structured outcomes

Since: 3.3
outcomeTypesOutcomeType[]optional

A list of valid outcome types that can be set on this piece of content

parentStringoptional

URI of the parent place of this content object. When visibility is place then the URI points to a place (and is required on create). Otherwise, this field is not part of the returned JSON (and must not be included on create).

parentContentSummaryread-only

Summary information about the content object that is the parent of this object.

Availability:

Will be present in search results only.

parentContentVisibleBooleanread-only

Flag indicating that the content parent's contents are visible to the viewer.

parentPlaceSummaryread-only

Summary information about the place that contains this object.

Availability:

Will be present in search results only.

parentVisibleBooleanread-only

Flag indicating that the content parent is visible to the viewer.

publishedISO 8601 Dateread-only

Date and time when this content object was originally created.

replyCountIntegerread-only

Number of replies to this object.

Availability:

Will be present only for object types that support replies.

resourcesObjectread-only

Resource links (and related permissions for the requesting person) relevant to this object.

restrictCommentsBooleanoptionalFlag indicating that old comments will be visible but new comments are not allowed. If not restricted then anyone with appropriate permissions can comment on the content.
reviewersPerson[]optional

List of people who are reviewers on the content of this document.

searchRankingsObjectread-only

A map of search result scores including social signals.

Availability:

Will be present in search results only.

statusStringread-only

State of this document.

  • incomplete - Document is in draft mode
  • pending_approval - Document is waiting for approval
  • rejected - Document has been rejected for publication by an approver
  • published - Document has been published
subjectStringrequired

Subject of this content object.

tagsString[]optional

Tags associated with this object.

Availability:

Will be present only for object types that support tags

typeStringrequired

The object type of this object ("document"). This field is required when creating new content.

unhelpfulCountIntegerread-onlyNumber of people who marked this document as unhelpful
Availability:

Will be present for document that have been marked unhelpful, if unhelpful (negative) acclaim is enabled

updatedISO 8601 Dateread-only

Date and time this content object was most recently updated.

updatedOnBehalfOfOnBehalfOfoptional

Information that is available when the content was updated by the author on behalf of another person. This person may be an anonymous user, an unknown user with just an email address or another user of Jive.

Since: 3.12
updaterPersonread-only

The last person that updated this document. If not present, the last person to update this document was the person referenced in the author field.

Since: 3.3
usersPerson[]optionalThe list of users that can see the content. On create or update, provide a list of Person URIs or Person entities. On get, returns a list of Person entities. This value is used only when visibility is people.
versionIntegerread-onlyThe version of the document entity. Documents can have multiple versions and each time a document is updated the version field is incremented. This is not necessarily how many versions exist of a document but the specific version of the document which this entity represents.
Retrieves:
  • the version of the returned document entity. This is not necessarily how many versions exist of a document but the specific version of the document which this entity represents.
  • viaViaoptional

    Information that is available when the content was posted via an external system.

    Since: 3.12
    viewCountIntegerread-only

    Number of times this content object has been viewed.

    Availability:

    Will be present only for objects that support view counts

    visibilityStringoptional

    The visibility policy for this content object. Valid values are:

    • all - anyone with appropriate permissions can see the content. Default when visibility, parent and users were not specified.
    • hidden - only the author can see the content.
    • people - only those users specified by users can see the content. Default when visibility and parent were not specified but users was specified.
    • place - place permissions specify which users can see the content. Default when visibility was not specified but parent was specified.
    visibleToExternalContributorsBooleanread-only

    Flag indicating that this content object is potentially visible to external contributors.

    canMarkHelpfulBooleanread-only
    canMarkUnHelpfulBooleanread-only
    followedBooleanread-only

    Whether the current user is following this object.

    Availability:

    Will be present only for object types that support being followed.

    hasVotedHelpfulBooleanread-only
    hasVotedUnHelpfulBooleanread-only
    promotedResultBooleanread-only

    A boolean determining whether this search result is a promoted result

    Availability:

    Will be present in search results only.

    unHelpfulEnabledBooleanread-only
    → Fields used by update and create operations
    → Fields used only by create operations
    → Fields not used by update or create operations

    Resources

    ResourceMethodDescription
    attachmentsGET

    Return a list of attachments associated to this document.

    Retrieves:
  • Attachment[]
  • childOutcomeTypesGET

    Return a paginated list of possible outcomes types on the content object's children.

    Retrieves:
  • OutcomeType[]
  • commentsPOST

    Add a comment about this content object.

    The minimum JSON object needed to create a comment is:

         {
             "content": {"type": "text/html", "text": "

    This is a new comment

    "}, }
    Takes:
    Retrieves:
  • Comment representing the recorded comment
  • commentsGET

    Return a paginated list of the comments about this content object.

    Retrieves:
  • Comment[]
  • extpropsDELETE

    Deletes all extended properties for content.

    Availability:

    Content should be editable to caller.

    extpropsGET

    Returns extended properties for content.

    Availability:

    Content should be visible to caller.

    Retrieves:
  • ExtProps[]
  • extpropsPOST

    Creates extended properties for content.

     {
      "any prop name": "any val",
      "any prop2 name": "any val"
     }
     
    Availability:

    Content should be editable to caller.

    Retrieves:
  • ExtProps[]
  • followersGET

    Return a paginated list of the people following this content.

    Retrieves:
  • Person[]
  • Since: 3.5
    followingInGET

    Return the list of custom streams in which the requesting person is following this document (if any).

    Retrieves:
  • Stream[]
  • htmlGET

    Return the HTML representation of this content object.

    likesPOST

    Register that the requesting person likes this document.

    Availability:

    Must be authenticated, must not be your own document, and must not have liked this document already

    likesGET

    Return a paginated list of people who like this document.

    Retrieves:
  • Person[]
  • markedHelpfulGET

    Return a paginated list of people who have marked this document helpful.

    Retrieves:
  • Person[]
  • markedUnhelpfulGET

    Return a paginated list of people who have marked this document unhelpful.

    Retrieves:
  • Person[]
  • helpfulPOST

    Register that the requesting person found that this document was helpful.

    Availability:

    Must be authenticated

    readPOST

    Mark this document as having been read.

    Since: 3.2
    unhelpfulPOST

    Register that the requesting person found that this document was not helpful.

    Availability:

    Must be authenticated

    readDELETE

    Mark this document as having not been read.

    Since: 3.2
    outcomesPOST

    Register that the requesting person created the outcome.

    Here is an example of a JSON with the minimum set of fields you must include:

    {
      "outcomeType":
          {
              "id": 1
          }
    }

    Availability:

    Must be authenticated, must not be able to read the content, and must not have the same outcome type on this comment already

    Takes:
    Retrieves:
  • Outcome Representation of the newly created outcome
  • outcomesGET

    Return a paginated list of outcomes on the content.

    Retrieves:
  • Outcome[]
  • outcomeTypesGET

    Return a paginated list of possible outcomes types on the content.

    Retrieves:
  • OutcomeType[]
  • selfGET

    Return an updated version of this content object.

    Retrieves:
  • Content describing this content object
  • selfPUT

    Update the information about this content object.

    Retrieves:
  • Content representing the updated content object
  • selfDELETE

    Delete this content object and any related comments and other related information.

    likesDELETE

    Delete the like of this document by the requesting person.

    Availability:

    Must be authenticated, and must have liked this document already

    helpfulDELETE

    Un-register that the requesting person found that this document was helpful.

    Availability:

    Must be authenticated and must have been previously been marked helpful by the requesting person

    unhelpfulDELETE

    Un-register that the requesting person found that this document was not helpful.

    Availability:

    Must be authenticated and must have been previously marked as not helpful by the requesting person

    versionsGET

    Return a paginated list of versions of this document.

    Retrieves:
  • ContentVersion