Person

Person Service

REST endpoint for interacting with Jive users via an API that is compatible with OpenSocial.

Examples:
Get Person by Email

Perform a GET request to /people/email/{email_address}. Here is an example curl command of getting one person by email and retrieving only the "name" field:

curl -u liz.employee:password "http://example.jiveon.com/api/core/v3/people/email/bob@example.com?fields=name"

Get Person by Username

Perform a GET request to /people/username/{username}. Here is an example curl command of getting one person by username and retrieving only the "emails" and "name" fields:

curl -u person:password "http://example.jiveon.com/api/core/v3/people/username/joeuser?fields=emails,name"

Create Personal Task

Perform a POST request to /people/{personID}/tasks. Here is an example curl command of creating a task for a user with ID 1234:

curl -u user:password -H "Content-Type: application/json" --data '{ "subject": "Organize teambuilding event", "dueDate": "2012-12-05T06:59:59.999+0000" }' http://example.jiveon.com/api/core/v3/people/1234/tasks

Create Terms And Conditions

POST /people/{personID}/acceptTermsAndConditions

Update Following

PUT /people/{personID}/@following/{followedPersonID}

Create a following relationship between the specified user and the specified followed user.

Path Parameters:
NameTypeRequiredDescription
personIDStringtrueID of the user who will be following
followedPersonIDStringtrueID of the user who will be followed
Return Status:
HTTP Status CodeDescription
204 (No Content)Request was successful
403 (Forbidden)The requesting user is not allowed to create this relationship
404 (Not Found)One or both of the specified users cannot be found

Create Person

POST /people

Create a Person for a new user based on the contents of the specified Person. Only modifiable fields that actually provide a value in the incoming entity are processed.

The JSON representation of the absolute minimum information that must be included to create a new person looks like this:

  {
      "emails" : [ {
          "value" : "{emailAddress}",
          "type" : "work",
          "primary" : true,
          "jive_label" : "Email"
      } ],
      "jive" : {
          "password" : "{password}",
          "username" : "{username}"
      },
      "name" : {
      "familyName" : "{lastName}",
      "givenName" : "{firstName}"
      }
  }
 
Query Parameters:
NameTypeRequiredDescription
welcomeBooleanfalseFlag indicating that a welcome email should be sent to the newly created user (since 3.2)
fieldsStringfalseThe fields to include in the returned entity
Takes:
  • Person containing information describing the new user
  • Return Status:
    HTTP Status CodeDescription
    201 (Created)Request was successful
    400 (Bad Request)Any of the input fields are malformed
    409 (Conflict)The requested change would cause business rules to be violated (such as more than one user with the same email address)
    403 (Forbidden)The requesting user is not authorized to make changes to the specified user
    404 (Not Found)The specified user does not exist
    501 (Not Implemented)User creation is not supported in this Jive instance

    Update Report

    PUT /people/{personID}/@reports/{reportPersonID}

    Create a manager-report relationship between the specified user and the specified report user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user which will be the manager in the new relationship
    reportPersonIDStringtrueID of the user which will be the direct report in the new relationship
    Return Status:
    HTTP Status CodeDescription
    204 (No Content)Request was successful
    403 (Forbidden)The requesting user is not allowed to create this relationship
    410 (Gone)Organization Chart relationships are not supported by this Jive instance
    404 (Not Found)One or both of the specified users cannot be found

    Create Stream

    POST /people/{personID}/streams

    Create a new custom stream for the specified user, based on the information in the specified Stream. Then, return a 201 with a Stream reflecting the new stream configuration.

    The following fields are processed from the incoming stream entity:

    • name - the name of the new stream (must be unique per user)
    • receiveEmails - flag indicating whether the user wants to receive email from this stream
    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user for whom to create a new stream, or null for the calling user
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned on the newly created entity (defaults to @all)
    Takes:
  • Configuration information to construct the new stream
  • Retrieves:
  • Stream describing the newly created stream
  • Return Status:
    HTTP Status CodeDescription
    201 (Created)Request was successful
    400 (Bad Request)One or more input values is malformed
    409 (Conflict)Requesting to create a custom stream with a name that already exists; or max number of streams has been reached
    403 (Forbidden)Requester is not allowed to manage custom streams for the specified user (i.e. not the specified user or a Jive admin)
    404 (Not Found)Specified user cannot be found

    Create Task

    POST /people/{personID}/tasks

    Create a personal Task.

    The JSON representation of the absolute minimum information that must be included to create a new personal task looks like this:

     {
      "subject": "Clean the carpet",
      "dueDate" : "2013-07-12T06:59:59.999+0000",
      "type": "task"
     }
     
    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user for which to create a task
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to include in the returned Task
    Takes:
  • Task containing information describing the new personal task
  • Return Status:
    HTTP Status CodeDescription
    201 (Created)Request was successful
    400 (Bad Request)Any of the input fields are malformed
    409 (Conflict)The new entity would conflict with system restrictions (such as two contents of the same type with the same name)
    403 (Forbidden)You are not allowed to access the specified content
    Since: 3.1

    Destroy Following

    DELETE /people/{personID}/@following/{followedPersonID}

    Delete a following relationship between the specified user and the specified followed user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user who is following
    followedPersonIDStringtruethe id of the user who is followed
    Return Status:
    HTTP Status CodeDescription
    204 (No Content)Request was successful
    409 (Conflict)if a following relationship does not exist between these two users
    403 (Forbidden)if the requesting user is not allowed to delete this relationship
    404 (Not Found)if one or both of the specified users cannot be found

    Destroy Person

    DELETE /people/{personID}

    Trigger a background task to delete the specified person, and all of their content. Returns an HTTP 202 (Accepted) status to indicate the the deletion request has been accepted. The only way that a client can tell it has been completed is by trying a GET on the person URI, and waiting until a NotFoundException is returned.

    WARNING - It is possible that errors during the deletion process might cause the delete to be abandoned.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the person to be deleted
    Takes:
  • Information about the request URI for this request (supplied automatically by the system)
  • Return Status:
    HTTP Status CodeDescription
    202 (Accepted)A background task has been queued to delete the specified person.
    400 (Bad Request)The specified id is malformed
    403 (Forbidden)The requesting user is not authorized to delete this user (Jive admin only)
    404 (Not Found)The id does not identify a valid user
    501 (Not Implemented)User deletion is not supported in this Jive instance

    Destroy Profile Image

    DELETE /people/{personID}/images/{index}

    Delete the specified profile image for the specified user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified user
    indexIntegertrue1-relative index of the specified profile image
    Return Status:
    HTTP Status CodeDescription
    204 (No Content)Request was successful
    400 (Bad Request)if the specified index is out of range
    410 (Gone)if profile images are not enabled in this Jive instance
    404 (Not Found)if the specified user or profile image cannot be found

    Destroy Report

    DELETE /people/{personID}/@reports/{reportPersonID}

    Delete (i.e. retire) an existing manager-report relationship between the specified manager user and the specified report user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user which is the manager in the existing relationship
    reportPersonIDStringtrueID of the user which is the direct report in the existing relationship
    Return Status:
    HTTP Status CodeDescription
    204 (No Content)Request was successful
    409 (Conflict)if a manager-report relationship does not currently exist between these two users
    403 (Forbidden)if the requesting user is not allowed to delete this relationship
    410 (Gone)if Organization Chart relationships are not supported by this Jive instance
    404 (Not Found)if one or both of the specified users cannot be found

    Get Activity

    GET /people/{personID}/activities

    Return the specified profile activities for the specified user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user for which to return profile activities
    Query Parameters:
    NameTypeRequiredDescription
    afterStringfalseDate and time representing the minimum "last activity in a collection" timestamp for selecting activities (cannot specify both after and before)
    beforeStringfalseDate and time representing the maxium "last activity in a collection" timestamp for selecting activities (cannot specify both after and before)
    countIntegerfalseMaximum number of activities to return in this request (you may get more activities than this in order to get all of the activities in the last collection)
    fieldsStringfalseFields to be included in the returned activities
    Retrieves:
  • Activity[]
  • Return Status:
    HTTP Status CodeDescription
    400 (Bad Request)The specified user ID is missing or malformed
    403 (Forbidden)The requesting user is not allowed to retrieve activities for the specified user
    404 (Not Found)The activities or the specified user is not found

    Get Avatar

    GET /people/{personID}/avatar

    Return the binary content of the avatar image for the specified user. If width is defined and height is not defined (or vice versa) then the returned size will depend on the value defined for aspect ratio. For instance, if the original image is 100 (W)x 600 (H) and 50 (W) is requested with preserveAspectRatio equals true, then the returned image will be 50 (W) x 300 (H). If preserveAspectRatio was false then the returned image will be 50 (W) x 600 (H). Remember that width and height are maximum possible values. This means that if you request 150 (W) then you will get 100 (W) since that is the size of the image.

    Parameters width or height are optional, when not defined then the original avatar image will be returned.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user for which to return an avatar
    Query Parameters:
    NameTypeRequiredDescription
    widthStringfalsesuggested width for resizing the image. If image is small than the requested size then original size is preserved.
    heightStringfalsesuggested height for resizing the image. If image is small than the requested size then original size is preserved.
    preserveAspectRatioStringfalse"true" or "false", indicating whether to preserve the original image's aspect ratio
    Retrieves:
  • Binary content of the avatar image
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The specified user ID is missing or malformed
    403 (Forbidden)The requesting user is not allowed to retrieve the avatar for the specified user
    500 (Internal Server Error)A processing error occurs accessing the avatar image
    404 (Not Found)The avatar image for the specified user is not found

    Get Avatar Deactivated

    GET /people/avatar/deactivated

    Return the binary content of the avatar image for deactivated users.

    Query Parameters:
    NameTypeRequiredDescription
    widthStringfalsesuggested width for resizing the image (must be less than original width)
    heightStringfalsesuggested height for resizing the image (must be less than original height)
    preserveAspectRatioStringfalse"true" or "false", indicating whether to preserve the original image's aspect ratio
    Retrieves:
  • Binary content of the avatar image
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    500 (Internal Server Error)A processing error occurs accessing the avatar image

    Get Blog

    GET /people/{personID}/blog

    Return the personal blog for the specified user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user for which to return a personal blog
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned (default is @all)
    Retrieves:
  • Blog containing the person's blog
  • Return Status:
    HTTP Status CodeDescription
    400 (Bad Request)Any input field is malformed
    403 (Forbidden)You are not allowed to delete the blog for this user
    404 (Not Found)The specified user or blog does not exist

    Get Colleagues

    GET /people/{personID}/@colleagues

    Return a paginated list of Persons about colleagues of the specified person (i.e. those who report to the same manager that this person does).

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified Jive user
    Query Parameters:
    NameTypeRequiredDescription
    startIndexIntegerfalseZero-relative index of the first instance to be returned
    countIntegerfalseMaximum number of instances to be returned (i.e. the page size)
    fieldsStringfalseFields to be returned (or null for summary fields)
    Retrieves:
  • Person[] listing the colleagues of the specified user
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The request criteria are malformed
    403 (Forbidden)The requesting user is not authorize to retrieve this user information
    410 (Gone)Organization Chart relationships are not supported by this Jive instance
    404 (Not Found)The specified user cannot be found

    Get Filterable Fields

    GET /people/@filterableFields
    A

    Return the set of fields that can be used for filtering users in this Jive instance.

    Retrieves:
  • String[]
  • Get Followers

    GET /people/{personID}/@followers

    Return a paginated list of Persons about people who are following the specified person.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified person
    Query Parameters:
    NameTypeRequiredDescription
    startIndexIntegerfalseZero-relative index of the first instance to be returned
    countIntegerfalseMaximum number of instances to be returned (i.e. the page size)
    fieldsStringfalseFields to be returned (or null for summary fields)
    Retrieves:
  • Person listing people following the specified person
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The request criteria are malformed
    403 (Forbidden)The requesting user is not authorize to retrieve this user information
    404 (Not Found)The specified user cannot be found

    Get Following

    GET /people/{personID}/@following

    Return a paginated list of Persons about people the specified person is following.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified person
    Query Parameters:
    NameTypeRequiredDescription
    startIndexIntegerfalseZero-relative index of the first instance to be returned
    countIntegerfalseMaximum number of instances to be returned (i.e. the page size)
    fieldsStringfalseFields to be returned (or null for summary fields)
    Retrieves:
  • Person listing people the specified person is following
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The request criteria are malformed
    403 (Forbidden)The requesting user is not authorize to retrieve this user information
    404 (Not Found)The specified user cannot be found

    Get Following In

    GET /people/{personID}/followingIn

    Return a list of Streams in which the requesting user is following this person (if any).

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user being followed
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned on matching custom streams (default is @owned)
    Retrieves:
  • Stream[]
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    404 (Not Found)The specified user cannot be found

    Get Following Person

    GET /people/{personID}/@following/{followedPersonID}

    Return a Person describing the followed person, if a following relationship from the specified person exists.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified person
    followedPersonIDStringtrueID of the followed person (if any)
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned (or null for all fields)
    Retrieves:
  • Person describing the followed person
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)No following relationship exists between these two people
    403 (Forbidden)The requesting user is not authorized to retrieve this user information
    404 (Not Found)Either user cannot be found

    Get Manager

    GET /people/{personID}/@manager

    Return a Person describing the manager of the specified person.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified Jive user
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned (or null for all fields)
    Retrieves:
  • Person describing the manager of the specified user
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The request criteria are malformed
    403 (Forbidden)The requesting user is not authorize to retrieve this user information
    410 (Gone)Organization Chart relationships are not supported by this Jive instance
    404 (Not Found)The specified user cannot be found

    Get Metadata

    GET /people/@metadata

    Return metadata about our data object type in this Jive instance.

    Retrieves:
  • Object
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful

    Get People

    GET /people

    Return a paginated list of Persons for users that match the specified criteria.

    This service supports the following filters. Only one filter of each type is allowed. Parameters, when used, should be wrapped in parentheses, and multiple values separated by commas. See the examples for clarification.

    FilterParamsExample
    company Single value to match against the Company profile field. ?filter=company(Jive+Software)
    department Single value to match against the Department profile field. ?filter=department(Engineering)
    hire-date One or two dates in ISO-8601 format. One date indicates selection of all people hired on or after the specified date. Two dates indicates selection of all people hired between the specified dates. ?filter=hire-date(2012-01-31T22:46:12.044%2B0000,2012-12-03T22:46:12.044%2B0000)
    include-disabled Optional boolean value indicating whether disabled users should be returned (without a filter, defaults to false). ?filter=include-disabled or ?filter=include-disabled(true)
    include-external Optional boolean value indicating whether external (non-person) users should be returned (without a filter, defaults to false). ?filter=include-external or ?filter=include-external(true)
    include-online Optional boolean value indicating whether only online users should be returned (without a filter, defaults to false). ?filter=include-online or ?filter=include-online(true)
    include-partner Optional boolean value indicating whether partner (external contributor) users should be returned (without a filter, defaults to true). ?filter=include-partner(false)
    lastProfileUpdateAsc Sort by last profile update date/time in ascending order.
    lastProfileUpdateDesc Sort by last profile update date/time in descending order.
    location Single value to match against the Location profile field. ?filter=location(Portland)
    nameonly Optional boolean value indicating whether or not to limit search results to only people that match by name. Without a filter, defaults to false. ?filter=nameonly(true) or ?filter=nameonly
    published One or two timestamps in ISO-8601 format. If one timestamp is specified, all persons created since that timestamp will be selected. If two timestamps are specified, all persons created in the specified range will be selected. ?filter=updated(2012-01-31T22:46:12.044%2B0000,2012-12-03T22:46:12.044%2B0000)
    search One or more search terms, separated by commas. You must escape any of the following special characters embedded in the search terms: comma (","), backslash ("\"), left parenthesis ("("), and right parenthesis (")") by preceding them with a backslash. ?filter=search(test,report) or ?filter=search(10\,000)
    tag One or more tag values, separated by commas. A match on any of the tags will cause this person to be returned. ?filter=tag(sales,performance)
    title Single value to match against the Title profile field. ?filter=title(Marketing+Manager)
    updated One or two timestamps in ISO-8601 format. If one timestamp is specified, all persons updated since that timestamp will be selected. If two timestamps are specified, all persons updated in the specified range will be selected. ?filter=updated(2012-01-31T22:46:12.044%2B0000,2012-12-03T22:46:12.044%2B0000)

    This service supports the following sort types.

    Sort Description
    dateJoinedAsc Sort by joined date in ascending order.
    dateJoinedDesc Sort by joined date in descending order.
    firstNameAsc Sort by first name in ascending order. This is the default sort order.
    lastNameAsc Sort by last name in ascending order.
    lastProfileUpdateAsc Sort by last profile update date/time in ascending order.
    lastProfileUpdateDesc Sort by last profile update date/time in descending order.
    relevanceDesc Sort by relevance, in descending order.
    statusLevelDesc Sort by status level in descending order.
    updatedAsc Sort by the date this person was most recently updated, in ascending order.
    updatedDesc Sort by the date this person was most recently updated, in descending order.
    Query Parameters:
    NameTypeRequiredDescription
    idsStringfalsePerson IDs (comma delimited) of the individual people to be returned
    queryStringfalseQuery string containing search terms (or null for no search criteria)
    startIndexIntegerfalseZero-relative index of the first instance to be returned
    countIntegerfalseMaximum number of instances to be returned (i.e. the page size)
    fieldsStringfalseFields to be returned (or null for summary fields)
    filterObject[]falseOptional set of filter expressions to select the returned objects
    sortStringfalseOptional sort to apply to the search results.
    originStringfalsethe origin of this search request. Used mainly for analytics to keep track of who's making the request
    Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The request criteria are malformed
    403 (Forbidden)The requesting user is not authorize to retrieve this user information

    Get Person

    GET /people/{personID}

    Return a Person describing the requested Jive user by ID.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the requested Jive user
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseField names to be returned (default is all)
    Retrieves:
  • Person
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The specified id is malformed
    403 (Forbidden)The requesting user is not authorized to retrieve this user
    404 (Not Found)The id does not identify a valid user

    Get Person By Email

    GET /people/email/{email}

    Return a Person describing the requested Jive user by email address.

    Path Parameters:
    NameTypeRequiredDescription
    emailStringtrueEmail address of the requested Jive user
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseField names to be returned (default is @all)
    Retrieves:
  • Person
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)if the specified email address is malformed
    403 (Forbidden)if the requesting user is not authorized to retrieve this user
    404 (Not Found)if the id does not identify a valid user

    Get Person By Username

    GET /people/username/{username}

    Return a Person describing the requested Jive user by username.

    Path Parameters:
    NameTypeRequiredDescription
    usernameStringtrueUsername of the requested Jive user
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseField names to be returned (default is all)
    Retrieves:
  • Person
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The specified email address is malformed
    403 (Forbidden)The requesting user is not authorized to retrieve this user
    404 (Not Found)The id does not identify a valid user

    Get Profile Image

    GET /people/{personID}/images/{index}

    Return a ProfileImage describing the specified profile image information for the specified user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified user
    indexIntegertrue1-relative index of the specified profile image
    Retrieves:
  • ProfileImage
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)if the specified index is out of range
    410 (Gone)if profile images are not enabled in this Jive instance
    404 (Not Found)if the specified user or profile image cannot be found

    Get Profile Image Data

    GET /people/{personID}/images/{index}/data

    Return the binary profile image data for the specified profile image for the specified user.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified user
    indexIntegertrue1-relative index of the specified profile image
    Query Parameters:
    NameTypeRequiredDescription
    sizeIntegerfalseSize (in pixels) of the requested profile image, or 0 for the default
    Retrieves:
  • Binary content of the specified image
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The specified index is out of range, or the size is invalid
    410 (Gone)Profile images are not enabled in this Jive instance
    404 (Not Found)The specified user or profile image cannot be found

    Get Profile Images

    GET /people/{personID}/images

    Return a list of ProfileImages for the profile images of the specified person.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified person
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned on the profile images
    Retrieves:
  • ProfileImage[]
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful

    Get Recommended People

    GET /people/recommended

    Return a list of recommended Persons for users. Do a GET to /api/core/v3/metadata/properties/feature.recommender.enabled to figure out whether recommendation service is enabled or not.

    Query Parameters:
    NameTypeRequiredDescription
    countIntegerfalseMaximum number of users to be returned
    fieldsStringfalseFields to be returned (or null for summary fields)
    Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    410 (Gone)Recommendation feature is disabled
    Since: 3.1

    Get Report

    GET /people/{personID}/@reports/{reportPersonID}

    Return a Person describing the specified direct report of the specified person, if such a relationship exists.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified (manager) Jive user
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned (or null for summary fields)
    Retrieves:
  • Person describing the direct report
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)No manager-report relationship exists between these people
    403 (Forbidden)The requesting user is not authorized to retrieve this user information
    410 (Gone)Organization Chart relationships are not supported by this Jive instance
    404 (Not Found)The specified user cannot be found

    Get Reports

    GET /people/{personID}/@reports

    Return a paginated list of Persons describing the direct reports of the specified person.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified Jive user
    Query Parameters:
    NameTypeRequiredDescription
    startIndexIntegerfalseZero-relative index of the first instance to be returned
    countIntegerfalseMaximum number of instances to be returned (i.e. the page size)
    fieldsStringfalseFields to be returned (or null for summary fields)
    Retrieves:
  • Person[] listing the direct reports of the specified person
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)The request criteria are malformed
    403 (Forbidden)The requesting user is not authorize to retrieve this user information
    410 (Gone)Organization Chart relationships are not supported by this Jive instance
    404 (Not Found)The specified user cannot be found

    Get Resources

    GET /people/@resources

    Return metadata about the resources available for our data object type in this Jive instance.

    Retrieves:
  • Resource[]
  • Get Security Groups

    GET /people/{personID}/securityGroups

    Return a list of SecurityGroups that the specified user is a member of. Note that this list will NOT include any security groups that this person is an administrator of. Because the number of security groups will generally be very small, pagination is not supported.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user for whom to return security groups
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned
    Retrieves:
  • SecurityGroup[]
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    403 (Forbidden)The requester is not allowed to view security groups for the owning user
    404 (Not Found)The specified user cannot be found

    Get Streams

    GET /people/{personID}/streams

    Return a list of Streams for the specified user. Because the number of streams will generally be very small, pagination is not supported.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user for whom to return custom streams
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned (default value is "@owned")
    Retrieves:
  • Stream[]
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    403 (Forbidden)The requester is not allowed to view custom streams for the owning user
    404 (Not Found)The specified user cannot be found

    Get Supported Fields

    GET /people/@supportedFields

    Return the set of fields for our object type that are supported in this Jive instance.

    Retrieves:
  • String[]
  • Get Tasks

    GET /people/{personID}/tasks

    Return a paginated list of personal tasks for the specified person.

    This service supports the following sort types.

    Sort Description
    dateCreatedAsc Sort by the date this content object was created, in ascending order
    dateCreatedDesc Sort by the date this content object was created, in descending order. Default if none was specified.
    latestActivityAsc Sort by the date this content object had the most recent activity, in ascending order
    latestActivityDesc Sort by the date this content object had the most recent activity, in descending order
    titleAsc Sort by content object subject, in ascending order
    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified Jive user
    Query Parameters:
    NameTypeRequiredDescription
    startIndexIntegerfalseZero-relative index at which to start results
    countIntegerfalseMaximum number of places to be returned
    fieldsStringfalseFields to be included in the returned entities
    sortStringfalseRequested sort order
    abridgedBooleanfalseFlag indicating that if content.text is requested, it will be abridged (length shortened, HTML tags removed)
    Retrieves:
  • Task[] listing the personal tasks
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)An input field is malformed
    Since: 3.1

    Get Terms And Conditions

    GET /people/{personID}/termsAndConditions

    Get Trending People

    GET /people/trending

    Return a list of trending Persons for users that match the specified filter criteria. Do a GET to /api/core/v3/metadata/properties/feature.recommender.enabled to figure out whether recommendation service is enabled or not.

    This service supports the following filters. Parameters, when used, should be wrapper in parenthesis. See the examples for clarification.

    Filter Params Example
    place users that are trending in this place URI (only one allowed) ?filter=place(http://domain/api/core/v3/places/1006)
    Query Parameters:
    NameTypeRequiredDescription
    filterObject[]falseOptional set of filter expressions to select the returned objects
    countIntegerfalseMaximum number of users to be returned
    fieldsStringfalseFields to be returned (or null for summary fields)
    Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)An input field is malformed
    403 (Forbidden)You are not allowed to access the specified content object
    410 (Gone)Recommendation feature is disabled
    404 (Not Found)The specified place in the filter does not exist
    Since: 3.1

    Create Following In

    POST /people/{personID}/followingIn

    Replace the list of Streams in which the requesting user is following this person.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the person being followed
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned on the updated list of streams
    Takes:
  • JSON array of Stream objects or URIs
  • Retrieves:
  • Stream[] updated list of streams
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)if any input field is malformed
    404 (Not Found)if the specified person does not exist
    Since: 3.3

    Create Profile Image

    POST /people/{personID}/images

    Create the specified profile image for the specified user at the next available index. Return a 201 (Created) status with a Location header containing the URI of the new profile image.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified user
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned in the new profile image
    Form Parameters:
    NameTypeRequiredDescription
    imageURIStringfalseURI for the temporary profile image that was previously uploaded
    Takes:
  • URI for the temporary profile image that was previously uploaded
  • Retrieves:
  • ProfileImage
  • Return Status:
    HTTP Status CodeDescription
    201 (Created)Request was successful
    400 (Bad Request)if a request parameter is malformed or index is out of bounds
    410 (Gone)if profile images are not enabled in this Jive instance
    404 (Not Found)if the specified user cannot be found

    Create Profile Image

    POST /people/{personID}/images/{index}

    Create or replace the specified profile image for the specified user. Return a 201 (Created) status with a Location header containing the URI of the new profile image.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the specified user
    indexIntegertrue1-relative index of the specified profile image
    Query Parameters:
    NameTypeRequiredDescription
    fieldsStringfalseFields to be returned in the new profile image
    Form Parameters:
    NameTypeRequiredDescription
    imageURIStringtrueimageURI URI for the temporary profile image that was previously uploaded
    Takes:
  • imageURI URI for the temporary profile image that was previously uploaded
  • Retrieves:
  • ProfileImage
  • Return Status:
    HTTP Status CodeDescription
    201 (Created)Request was successful
    400 (Bad Request)if a request parameter is malformed or index is out of bounds
    410 (Gone)if profile images are not enabled in this Jive instance
    404 (Not Found)if the specified user cannot be found

    Update Person

    PUT /people/{personID}

    Update the specified user based on the contents of the specified Person. Only modifiable fields that actually provide a value in the incoming entity are processed. Then, return a Person reflecting the processed changes.

    Path Parameters:
    NameTypeRequiredDescription
    personIDStringtrueID of the user to be updated
    Takes:
  • Person containing our update information
  • Retrieves:
  • Person
  • Return Status:
    HTTP Status CodeDescription
    200 (OK)Request was successful
    400 (Bad Request)Any of the input fields are malformed
    409 (Conflict)Requested change would cause business rules to be violated (such as more than one user with the same email address)
    403 (Forbidden)The requesting user is not authorized to make changes to the specified user
    404 (Not Found)The specified user does not exist