Publication

A PublicationEntity represents a Publication definition within Jive. Publications are processed to generate activity streams that are "forced" upon users ("subscription streams"). A Publication contains Subscriptions, which are definitions consisting of a set of subscribers (user groups or individual users) and a set of associations (places such as spaces, social groups, blogs, or projects). Exactly one activity stream is generated for each user defined as a subscriber. This activity stream consists of all of the places for which a user is defined in the subscriber set for that subscription. Publications must have unique names. Publication names follow the same length restriction as a custom activity stream. By default, the system is limited to only allow 10 Publications and 100 Subscriptions within each publication.

Examples:
PublicationEntity Fields and Resources

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

 {
     "id" : "1114",
     "name" : "Jive News",
     "resources" : {
         "self" : {
             "allowed" : [ "DELETE", "PUT", "GET" ],
             "ref" : "http://example.jiveon.com/api/core/v3/publications/1114"
         }
     },
     "published" : "2014-12-03T17:21:50.995+0000",
     "updated" : "2014-12-03T17:24:42.737+0000",
     "subscriptions" : [ {
         "id" : "1104",
         "published" : "2014-12-03T17:24:40.148+0000",
         "updated" : "2014-12-03T17:24:42.739+0000",
         "name" : "Thought Leaders, Office...",
         "subscriberCount" : 3,
         "subscribers" : [
            "http://example.jiveon.com/api/core/v3/securityGroups/1012",
            "http://example.jiveon.com/api/core/v3/people/2045"
         ],
         "associations" : [
             "http://example.jiveon.com/api/core/v3/places/1531",
             "http://example.jiveon.com/api/core/v3/places/1526"
         ],
         "type" : "subscription"
     } ],
     "author" : {
         "id" : "2044",
         "displayName" : "Menny Jayo",
         "username" : "menny@j.com"
         "type" : "person"
     },
     "displayOrder" : 1,
     "subscriberCount" : 3,
     "associationCount" : 2,
     "type" : "publication",
     "beingProcessed" : false
 }
Create Publication

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

 {
     "type" : "publication",
     "name" : "Jive News"
 }
Create Publication Targeted to All Users

POST to /publications creates a new publication. If either of the security groups "@registered" or "@everyone" are specified in a subscription, it must be the only subscriber URI specified, or a 409 Conflict Exception will result. This does not preclude different subscriptions within a publication from having other groups or users specified. The minimum set of fields you must include are:

 {
     "type" : "publication",
     "name" : "Jive News",
     "subscriptions" : [
         {
             "type" : "subscription",
             "subscribers": [
                 "http://example.jiveon.com/api/core/v3/securityGroups/@registered"
             ],
             "associations": [
                 "http://example.jiveon.com/api/core/v3/places/1134",
                 "http://example.jiveon.com/api/core/v3/places/1485"
             ]
         }
     ]
 }
Create Publication

POST to /publications creates a new publication. If either of the security groups "@registered" or "@everyone" are specified in a subscription, it must be the only subscriber URI specified, or a 409 Conflict Exception will result. This does not preclude different subscriptions within a publication from having other groups or users specified. The minimum set of fields you must include are:

 {
     "type" : "publication",
     "name" : "Jive News",
     "subscriptions" : [
         {
             "type": "subscription",
             "subscribers": [
                 "http://example.jiveon.com/api/core/v3/securityGroups/@registered"
             ],
             "associations": [
                 "http://example.jiveon.com/api/core/v3/places/1134",
                 "http://example.jiveon.com/api/core/v3/places/1485"
             ]
         },
         {
             "type": "subscription",
             "subscribers": [
                 "http://example.jiveon.com/api/core/v3/securityGroups/2011",
                 "http://example.jiveon.com/api/core/v3/securityGroups/2011",
                 "http://example.jiveon.com/api/core/v3/people/2045",
                 "http://example.jiveon.com/api/core/v3/people/2066"
             ],
             "associations": [
                 "http://example.jiveon.com/api/core/v3/places/1100",
                 "http://example.jiveon.com/api/core/v3/places/1618"
             ]
         }
     ]
 }
*
Update Publication

PUT to /publications/{publicationID} updates a publication.

Get Publication

GET to /publications/{publicationID} gets a publication.

Note that there may be cases where the authenticated user does not entitlement to see the existence of a social group for visibility type "secret". In this case, the PublicationEntity will have a null "subscriptions" attribute as opposed to an empty list of subscription, and the PUT and DELETE verbs will be absent from the entity's "self" resource. This indicates that the user cannot update a resource for which they cannot see the complete contents.

Fields

FieldTypeMode Description
authorPersonread-only

A Person describing the person that created this publication. During create, this will be set automatically to the authenticated user.

displayOrderIntegeroptional

The index of the total ordering in which an activity stream generated from this publication should be displayed. If this is not specified in a call to create a publication, it will default to the last position. If this is not specified in a call to update a publication, the value will not be modified.

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.

nameStringrequired

Name of this publication. Must be unique among all publications.

publishedISO 8601 Dateread-only

Date and time this publication was originally created.

resourcesObjectread-only

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

subscribersTypeStringread-only

If this publication contains a subscription including Everyone or Registered Users. This is simply a top-level flag as to the status of the underlying subscriptions, so modifying this value in update operations will not set the publication to be visible to Everyone or Registered Users groups

subscriptionsSubscription[]optional

A Subscription list describing the subscriptions that are in this publication.

typeStringread-only

The object type of this object.

updatedISO 8601 Dateread-only

Date and time this publication was most recently updated.

beingProcessedBooleanread-only

The status of the processing of this publication into activity streams. After saving a publication, it may take several minutes to process all of the publications to create activity streams. During this time, any update of the publication will be rejected by the service.

receiveEmailsBooleanread-only

Defines if the streams generated from this publication should force users to receive emails.

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

Resources

ResourceMethodDescription
selfGET

Return an updated version of this publication.

Availability:

Available to Jive admins only

Retrieves:
  • Publication representing the updated publication
  • selfPUT

    Update the information about this publication.

    Availability:

    Available to Jive admins only

    Retrieves:
  • Publication representing the updated publication
  • selfDELETE

    Delete this publication.

    Availability:

    Available to Jive admins only