uPortal's REST API
uPortal has a rich RESTful web service based API that returns JSON. Â Here are the paths to those services. This document assumes that you deploy your uPortal instance to the /uPortal context. This list is incomplete as not the whole API is public facing.
[GET]Â /uPortal/api/session.json
This is the session feed that will return information under the object "person". This gives you things like the username, displayName, sessionKey, and version.
[GET] /uPortal/api/people.json?searchTerms=xxx&searchTerms=yyy
[GET] /uPortal/api/people/{username}.json
[GET] /uPortal/layout.json (also at uPortal/api/v1/dlm/layout.json)
This provides your whole layout with folder (aka tab) structures and everything. Â Does not include regions, favorites, or favorite collections.
For new development consider using /uPortal/api/v4.3/dlm/layout.json instead.
[GET] /uPortal/api/v4.3/dlm/layout.json) (uPortal 4.3+)
This provides your whole layout with folder (aka tab) structures and everything including regions, favorites, favorite collections, portlet publishing parameters, and certain UI information (are impersonating, can add tab, etc.).
[GET]Â /uPortal/api/layoutDoc
Parameters: tab (optional)
If tab is not provided, it returns an array of all the current users portlets.
If the tab is provided, it returns that tab's portlets.
This meta data can be useful for drawing layouts on a main page or in a menu.
[GET] /uPortal/api/marketplace/entries.json
This fetches a list of entries that is available in the app store/marketplace in your uPortal instance. This does take into account permissions with BROWSE and SUBSCRIBE for that user.
[GET] /uPortal/api/marketplace/entry/{fname}.json
 Path Parameter : fname = the functional name of the portlet
This fetches the meta data for a specific portlet.
[POST] /uPortal/api/marketplace/{fname}/getRating
This fetches a rating for a given user for that portlet.
/uPortal/api/marketplace/{fname}/rating/{rating}
Path Parameter:Â
- fname : the functional name of the portlet
- rating : the rating the user wishes to post
Request Parameter:
- review : The review text you wish to add to the rating (optional)
[POST] /uPortal/api/layout?action={action}
This is how you modify your layout. Each action has different things that are required and its kind of complex. So I'm going to just point you at the Java file. You can find that here.
Â