skip navigation

Developer Introduction

The Jive Platform offers a class-leading collaboration solution that a developer can harness and enhance by building integrations that can encompass numerous facets of the collaboration lifecycle. We’ve highlighted some of the common Jive integration use-cases below to help connect developers with the best resources for their specific needs.

For a curated list of common solution patterns for these use-cases, click here.

Building an API Client

Overview

REST API
The Jive Core REST API is a RESTful service which allows you to interact with your Jive community. Most user actions within Jive can be performed programmatically using the REST API; some of the key categories are:

Developers can interact with Jive’s Core REST API using 3 forms of authentication:

  • HTTP Basic w/SSL
  • OAuth 2.0 (Recommended)
  • Session Cookie (limited to HTML Widgets and customized themes)

View API Documentation

OAuth 2.0 (Recommended)

  • OAuth 2.0 is the recommended authentication protocol for interacting with the Jive’s Core REST API.
  • Jive supports both 2 and 3-legged OAuth flows, while explicitly supporting the authorization_code and password grant types.
  • Developers must create a Jive add-on to identify their integration to participate in a Jive OAuth flow.

How To Manage OAuth Access in Jive

Follow steps outlined in How To Manage OAuth Access in Jive (above), to get YOUR_ACCESS_TOKEN

curl --header "Authorization: Bearer YOUR_ACCESS_TOKEN" "https://sandbox.jiveon.com/api/core/v3/people/@me"

HTTP Basic w/SSL

Analytics API

  • Developers may not need, want, or be able to use a formal OAuth 2.0 client for their development solution.
  • Basic Auth provides limited access to select APIs. (APIs such as ExtProps and Webhooks require an OAuth access token).
  • Great for quick API testing and/or service accounts.

Note: Will not work with user accounts managed by external SSO systems.

More REST API Resources

curl -u USERNAME "https://sandbox.jiveon.com/api/core/v3/people/@me"

Using Jive Analytics

Data Export Service API

  • Monitor over 100 discrete activity events that offer insights into user interaction with people, places and content in Jive.
  • Activity data available for full reporting/filtering in within 1 hour of the actual event
  • JSON / CSV export options for easy import into industry standard OLAP, reporting tools or web services.
  • Test and refine your Jive Analytics report queries using API Explorer.

More Analytics Resources

Use the following example curl command to retrieve your authentication token and then retrieve the latest daily activity in CSV format.
Note:  You will need an admin to setup your Analytics account to get CLIENT_ID and CLIENT_SECRET.

The cloud analytics server is https://api-aws.jivesoftware.com for customers in our US AWS Region.

curl -s -X POST "https://api-aws.jivesoftware.com/analytics/v1/auth/login?clientId=CLIENT_ID&clientSecret=CLIENT_SECRET" | { read authKey; curl -H "Authorization: $authKey" "https://api.jivesoftware.com/analytics/v2/export/activity/csv/lastday";  }

The cloud analytics server is https://api-eu-aws.jivesoftware.com for customers in our EU AWS Region.

curl -s -X POST "https://api-eu-aws.jivesoftware.com/analytics/v1/auth/login?clientId=CLIENT_ID&clientSecret=CLIENT_SECRET" | { read authKey; curl -H "Authorization: $authKey" "https://api.jivesoftware.com/analytics/v2/export/activity/csv/lastday";  }

Integrating Activity Streams

Overview

Tiles, Streams and Templates
Streams are another type of dynamic content you can push to Jive. With streams, you can add content directly to the activity stream of a particular Jive place. The activity you push to a place is threaded alongside natively created activity. Just as with native activity, your activity title, description and comments are searchable from the Jive search field.

ActivityStream

More Activity Stream Resources

Simple Stream Integrations

  • Add external stream integrations to Jive in minutes without middleware using just an HTTP POST.
  • Simple Javascript transformer which allows external systems to communicate with Jive in their native format.
  • Incremental progressions available to turn your simple stream integration into an immersive stream integration.

Simple Stream Integration Blog Series

Bi-Directional Activity Streams

  • Insure that users are informed on the latest activity, whether they choose to be in Jive or the external system.
  • Synchronize collaboration lifecycle events between systems, such as liking, comments and updates for any piece of content.

Note:  This integration pattern requires the use of middleware.

Try the Jive iPaaS :: Stream Integration

Webhook Events

Jive Webhooks are user-defined HTTP callbacks that allow you to be notified when events occur in your Jive community. You can use webhooks to synchronize your external content to the Jive community without performing resource intensive polling. This is also valuable, for example, if you are trying to do bidirectional commenting with another system. Jive supports two types of webhooks:

  • Content webhooks. These cover events related to content changes. For example, notification when someone comments on a document.
  • System webhooks. These cover system events unrelated to specific content. For example, notification when a user profile changes.

Note:  This integration pattern requires the use of middleware and OAuth.

Try the Jive iPaaS :: Stream Integration

Embedding Custom Experiences

Jive Apps

Jive Apps

  • Jive Apps allow you to extend the Jive UI with your own business-specific application.
  • An app UI also has contextual access to the content, people, and places within your Jive community using Jive’s Open Social API.
  • Apps are written primarily in HTML and JavaScript.

Apps Actions

Jive App Contribution Reference

Custom View Tiles

  • Create fully customizable user-experiences that are portable and can be placed on tile pages with tiles from other systems.
  • Included in mobile dashboard views when responsive feature enabled for tile.
  • Can easily be deployed with or without middleware using the Jive Apps Framework.

Note:  While this feature leverages Jive Apps, Custom View Tiles cannot use Jive Connects.
swagger-pet-store-custom-view-tile

More Tile Resources

Data Tiles

  • Create comprehensive collaboration experiences comprised of data from multiple systems organized into definitive dashboards.
  • Push JSON data to API end-points and Jive will persist and display the content.
  • Customizable tile actions let you create clickable interactions based on the data in the Tile.

Note:  This integration pattern requires the use of middleware.

tile-collage-8c4

More Tile Resources

Enriching Third-Party Experiences

Jive Anywhere Cartridges

Jive Cartridges

  • Cartridges are a component of Jive Anywhere, a FREE browser extension for Chrome, Firefox, Internet Explorer and Safari.
  • Simplify collecting web page details for specific domains to the click of a button, including rich snapshots and site meta-data.
  • Use Javascript to manipulate the external site DOM to inject custom behavior and data enriched by Jive.

Note:  Check out the Cartridge Wizard built-in to Jive Anywhere

Cartridge-Gmail

More Cartridge Resources

Working with External Storage

Overview

External Storage Framework
External Storage Framework (ESF) is a powerful solution for connecting a Jive place to an external storage system. To the user, there is seamless integration between systems—if a file is uploaded via Jive, it will appear on the external system; if a file is uploaded via the external system, it will appear within Jive. Under the hood, all binary data is stored within this external system. However, this content is treated like a first-class content type within Jive—you can edit it, search for it, and comment on it. Commenting on either system can work bidirectionally, if desired. Existing ESF solutions include Box, Google Drive, Dropbox, and others.

Note:  This integration pattern requires the use of middleware.

ESF-Box

Jive iPaaS (Recommended)

  • Allows developers to quickly create beautiful integrations to your Jive instance without setting up your own middleware.
  • Code is hosted and run in isolation in either US and EU data-centers.
  • All communication with Jive is abstracted to help you focus on the business rules for your solution.

More External Storage Resources