Project
A project
is a place for recording progress towards a specific goal. A project must have a parent place--there
are no global projects.
Projects have associated Tasks
with individual assignments and due dates. Projects can also
have CheckPoints, which are simply a date and description of a checkpoint.
An example JSON representation looks like this:
Example:
Example JSON
JSON including important fields and a Project's resources. See the tables below for a list of all fields and resources.
{ "type" : "project", "name" : "Project of a Secret Group", "parent" : "https://example.jiveon.com/api/core/v3/places/1435", "displayName" : "project-of-a-secret-group", "description" : "This is a secret group", "status" : "Active", "contentTypes" : [ "blog", "documents", "files", "discussions", "polls", "projects", "tasks" ], "projectStatus" : "HIGH", "visibleToExternalContributors" : false, "viewCount" : 2, "followerCount" : 1, "creator" : { "name" : { "formatted" : "Administrator" }, "type" : "person", "displayName" : "Administrator", "id" : "1" }, "startDate" : "2012-07-02T07:00:00.000+0000", "dueDate" : "2012-09-14T06:59:59.999+0000", "published" : "2012-07-20T17:28:36.304+0000", "updated" : "2012-07-20T17:29:20.852+0000", "tags" : [ ], "id" : "1013", "resources" : { "checkpoints" : { "ref" : "https://example.jiveon.com/api/core/v3/checkpoints/1437", "allowed" : [ "POST", "GET" ] }, "contents" : { "ref" : "https://example.jiveon.com/api/core/v3/contents?filter=place(http%3A%2F%2FLT-WS-090156%3A8080%2Fapi%2Fcore%2Fv3%2Fplaces%2F1437)", "allowed" : [ "GET" ] }, "announcements" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/announcements", "allowed" : [ "POST", "GET" ] }, "self" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437", "allowed" : [ "PUT", "GET", "DELETE" ] }, "html" : { "ref" : "https://example.jiveon.com/groups/my-secret-group/projects/secret-project-of-a-secret-group", "allowed" : [ "GET" ] }, "categories" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/categories", "allowed" : [ "POST", "GET" ] }, "tasks" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/tasks", "allowed" : [ "POST", "GET" ] }, "places" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/places", "allowed" : [ "GET" ] }, "followingIn" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/followingIn", "allowed" : [ "GET" ] }, "avatar" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/avatar", "allowed" : [ "POST", "GET", "DELETE" ] }, "activity" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/activities", "allowed" : [ "GET" ] }, "statics" : { "ref" : "https://example.jiveon.com/api/core/v3/places/1437/statics", "allowed" : [ "POST", "GET" ] } } }
Fields
Field | Type | Mode † | Description |
---|---|---|---|
contentTypes | String[] | optional | Content types that may be included in this place. Valid values are the
plural versions of all defined content types ( |
creator | Person | read-only | Person that created this project. |
description | String | optional | Human readable description of this place. |
displayName | String | required | Display name of this place. It must be unique among places of the same type in this Jive instance. This value is used to compose the URL for the HTML presentation of this place in the Jive user interface, so its syntax must conform to the following rules:
|
dueDate | ISO 8601 Date | required | Date by which this project must be completed. |
followerCount | Integer | read-only | Number of people following this object. Availability:Will be present only for object types that support being followed. |
highlightBody | String | read-only | Highlight snippet of a search match in the body or description. Availability:Will be present in search results only. |
highlightSubject | String | read-only | Highlight snippet of a search match in the subject or name. Availability:Will be present in search results only. |
highlightTags | String | read-only | Highlight snippet of a search match in tags. Availability:Will be present in search results only. |
id | String | read-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. |
likeCount | Integer | read-only | Number of people who have liked this object. Availability:Will be present only for object types that support being liked. |
locale | String | read-only | Locale string of the space. |
name | String | required | Formal name of this place. It must be unique among places of the same type in this Jive instance. |
parent | String | required | URI of the place that contains this place (if any). URI points at a containing |
parentContent | Summary | read-only | Summary information about the content object that is the parent of this object. Availability:Will be present in search results only. |
parentPlace | Summary | read-only | Summary information about the place that contains this object. Availability:Will be present in search results only. |
projectStatus | String | read-only | Current status of this project with respect to its schedule. TODO - enumerate values |
published | ISO 8601 Date | read-only | Date and time when this place was originally created. |
resources | Object | read-only | Resource links (and related permissions for the requesting person) relevant to this object. |
startDate | ISO 8601 Date | required | Date that this project was (or will be) started. |
status | String | read-only | Visibility status of this place ("Active", "Archived", "Deleted"). |
| String[] | optional | Tags associated with this object. Availability:Will be present only for object types that support tags |
type | String | required | The object type of this object ("project"). |
updated | ISO 8601 Date | read-only | Date and time this place was most recently updated. |
viewCount | Integer | read-only | Number of times this place has been viewed. Availability:Will be present only for objects that support view counts |
visibleToExternalContributors | Boolean | optional | Flag indicating that this place is potentially visible to external contributors. |
Resources
Resource | Method | Description |
---|---|---|
activity | GET | Return a paginated list of activities that have occurred within this place. Retrieves: |
announcements | POST | Create a new announcement associated with this place. An appropriate
Here is an example of a JSON with the minimum set of fields you must include: { "content": { "type": "text/html", "text": " Takes:
Retrieves: |
announcements | GET | Return a paginated list of announcements for this place. Retrieves: |
avatar | GET | Return the binary content of the avatar image for this place. |
avatar | POST | Register a new avatar image (or replace an existing one) for this place. The image will be downloaded and scaled as necessary. |
avatar | DELETE | Delete the existing avatar image for this place. |
blog | GET | Return the blog associated with this place. Retrieves: |
categories | GET | Return the categories associated with this place. Retrieves: |
categories | POST | Create a new category for this place with the specified characteristics, and return an entity describing it. The minimum information required to create a new category is: { "name": "Animals" } Takes:
Retrieves: |
checkpoints | GET | Return a paginated list of checkpoints for this project. Retrieves: |
contents | GET | Return the first page of a paginated list of contents that are contained in this place. |
followers | GET | Return a paginated list of the people following this place. Retrieves:Since: 3.5 |
followingIn | GET | Return the custom streams (if any) in which the requesting person is following this place. Retrieves: |
html | GET | URI of the HTML representation of this place. |
places | GET | Return the list of child places in this place. Retrieves: |
self | GET | Return an updated version of this place. Retrieves: |
self | PUT | Update the information about this place and return an updated entity. Retrieves: |
self | DELETE | Delete this place and any related content. |
checkpoints | POST | Replace the existing checkpoints for the specified project with the new ones, and return the updated array of checkpoints. You will need to pass a list that points to an array of checkpoints. Here we see an example of two checkpoints with their minimum set of fields: { "list": [ { "name": "Feature Complete", "dueDate": "2012-07-31T07: 00: 00.000+0000" }, { "name": "Code Freeze", "dueDate": "2012-09-31T07: 00: 00.000+0000" } ] } Takes:
Retrieves: |
statics | POST | Create a new static resource for this place with the specified characteristics, and return an entity describing it. { "filename" : "{filename of the static resource}" } A description field may optionally be included as well. Retrieves:Since: 3.1 |
statics | GET | Return the list of static resources associated with this place. Retrieves: |
tasks | POST | Create a new task in the specified project. The minimum information required is: { "subject": "Clean the carpet", "dueDate" : "2013-07-12T06:59:59.999+0000", "type": "task" } Availability:Available only when the specified person is allowed to create tasks in this project. Takes:Retrieves:Since: 3.1 |
tasks | GET | Return the first page of a paginated list of tasks for this project. Availability:Available only when the specified person is allowed to view project tasks. Retrieves:Since: 3.1 |