03/17/2010

Introducing the IdeaJam API

Tags: 1.8 ideajam api
Coming in the Summer '10 release of IdeaJam (due in May/June) we will be introducing the IdeaJam API. The API will be available via JSON and Web Services. Using the API customers will be able to integrate IdeaJam into mobile applications, intranet applications, widgets, and other Lotus products including Websphere Portal, Lotus Connections and many others. You may remember this blog entry where we talked about our customers developing some really cool IQJam integration points with iPhone, Android and Microsoft Office.

Based on customer feedback let me introduce you to the IdeaJam API methods:

addComment(ideaId, comment, securityKey)

addIdea (idea, securityKey)

findIdeaById(ideaId, securityKey)

getIdeaSpaces(securityKey)

getRecentComments(ideaSpace, securityKey)

getRecentIdeas(ideaSpace, count, securityKey)

getRecentIdeasByAuthor(author, count, securityKey)

getRecentIdeasByTag(tag, ideaSpace, count, securityKey)

getStats(securityKey, numberOfIdeas, numberOfComments, numberOfVotes securitykey)

getTopInnovators(securityKey)

getTopTags(securityKey)

getVotesForIdea(ideaId, securityKey)

getWhatsHot(timeFrame, securityKey)

searchIdeas(search, securityKey)

The API is still under development and if you have any feedback I am sure the development team would love to hear from you.

12/10/2009

Example Javascript code to add IQJam questions to IdeaJam

Tags: api iqjam ideajam
Earlier today we blogged about surfacing IQJam question in IdeaJam and below is an example of the JavaScript code customers can place into their IdeaJam Control Panel to have IQJam questions appear with inside of IdeaJam. Customers will need to include their IQJam API Security Key for the "securitykey". This is sample code and will be included with IdeaJam V1.7.

<script language="Javascript">

function getRelatedQuestions(){
       try {
       var url = "/iqjam/iqjam.nsf/jsonSearchQuestions";
       var myRequest = new XHR( {
                       method: 'post',
                       onFailure: function (data) {
                               //alert("There was an error: " + data.responseText);
                       },
                       onSuccess: function (data){
                               data = eval("(" + data + ")");
                               if (data.questions.length > 0){
                                       var html = "<b>Possibly Related Questions in IQJam</b><br  /><br /><ul>";
                                       for (var i=0; i<data.questions.length; i++){
                                               html += "<li><a style=\"color: #333333; text-decoration: none;\" href=\"" + data.questions[i].url + "\" target=\"newwin\">" + data.questions[i].title + "</a></li>";
                                               if (i > 3)
                                                       break;
                                       }
                                       $("relatedquestions").innerHTML = html + "<ul/>";
                                       $("relatedquestions").style.display = "block";
                               }
                       }
               }
       );
       var searchin = document.title;
       searchin = searchin.split(" - ")[1];
       searchin = searchin.split(" ");
       var search = "";
       for (var i=0; i<searchin.length; i++){
               if (searchin[i].length > 2){
                       if(search != "")
                               search += " OR ";
                       search += searchin[i];
               }
       }
       var data = "securitykey=APIKeyOnYourUserProfile&search=" + search;
       myRequest.send(url, data);
       }catch(e){}
}

window.onDomReady(getRelatedQuestions);
</script>
<div id="relatedquestions" style="display: none; padding: 10px; font-size: 0.9em; background-color: #FFFFFF; color: #333333; font-weight: normal; -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; margin-bottom: 5px;"></div>

12/10/2009

See the IQJam JSON API in action in IdeaJam

Tags: json ideajam iqjam api
With a few lines of Javascript, customers can easily add IQJam functionality to any website using the IQJam API. Below you will see that questions from IQJam are being surfaced within an IdeaJam idea. Very cool stuff and even more cool stuff coming soon. You can see this functionality live in The IBM Lotus Community IdeaJam right now.

IQJam meets IdeaJam - Surface IQJam Questions in IdeaJam via JSON

To see how you can integrate IQJam with Microsoft Office look here.

11/27/2009

Video Demo: IQJam and Microsoft Office 2007 - Web Services API

Tags: office iqjam web services api
The IQJam Web Services API is extremely powerful. This video demonstrates an IQJam knowledge search sidebar window in Microsoft Office 2007.



Higher quality videos are on the way for IQJam. Thank you for watching.

08/15/2009

Introducing the IQJam Web Services API

Tags: api iqjam
IQJam has a set of web services (SOAP) that will allow developers to read data from and post data to an IQJam. The way this will work is through a security token that each user is assigned in their Profile along with an ACL Role that allows the API access. The implentation is very elegant and currently consists of the following methods:
  • addQuestion
  • addAnswer
  • findQuestionById
  • searchQuestions
  • getRecentQuestions
  • getRecentQuestionsByTag
  • getRecentQuestionsByAuthor
If we take a look at the addQuestion method we have:

Parameters:
- Question
- Security Key
Response:
- Question ID

and the getRecentQuestions:

Parameters:
- IQSpace (Optional)
- Security Key
Response:
- Question(s)

Pretty straight forward right?

A set of JSON methods will also be provided with IQJam and will offer equivelant functionality. There are also several other methods that are currently being developed. All of these services can be found on the Developers link located at the bottom of every IQJam page.

RSS