uPortal

My testing grounds for changes to be merged to Apereo uPortal

This project is maintained by ChristianMurphy

API Documentation

REST APIs

uPortal includes an extensive suite of REST APIs that it uses to access and manipulate portal data from within the UI. Swagger-based documentation and tooling is available for these APIs, but is disabled (by default) as a security precaution.

To enable Swagger API documentation, add the following property to uPortal.properties:

org.apereo.portal.rest.swagger.SwaggerConfiguration.enabled=true

After restarting the Tomcat container, you can access the Swagger UI at /uPortal/api/swagger-ui.html.

Swagger API documentation

Single portlet JSON by fname

/api/portlet/{fname}.json

(example: http://localhost:8080/uPortal/api/portlet/what-is-uportal.json )

If the requesting user can BROWSE the portlet with the requested fname, responds with JSON representing the portlet with that fname. (Note structure in example below.)

Data elements:

Naming and describing the portlet:

About conveying arbitrary configuration:

About escaping the portlet container:

About enabling special handling in uPortal-home:

Data elements not understood offhand by the author of this documentation:

Example response:

{
  "portlet": {
    "nodeId": "-1",
    "title": "Welcome to uPortal",
    "description": "Description of uPortal.",
    "url": null,
    "iconUrl": "/ResourceServingWebapp/rs/tango/0.8.90/32x32/mimetypes/text-html.png",
    "faIcon": null,
    "fname": "what-is-uportal",
    "target": null,
    "widgetURL": null,
    "widgetType": null,
    "widgetTemplate": null,
    "widgetConfig": null,
    "staticContent": "\n            \n                <h2>What is uPortal?</h2>\n                \n                <p>\n                    <a href=\"http://www.apereo.org/uportal\" target=\"_blank\">uPortal</a>\n                    is a free and open source Java-implemented web portal \n                    platform developed and maintained by participants drawn \n                    from across higher education under the coordination of \n                    <a href=\"http://www.apereo.org/\" target=\"_blank\">Apereo</a>.\n                    uPortal can aggregate content, present self-service \n                    applications, personalize presentation and content on the \n                    basis of groups and user attributes, drive mobile device applications, and allow advanced\n                    end-user-participatory customization of the portal experience. \n                    uPortal supports the JSR-286 and JSR-168 Java portlet specification for\n                    including your custom applications within the portal.\n                </p>\n                \n                <p>Welcome to uPortal.</p> \n            \n        ",
    "pithyStaticContent": null,
    "parameters": {
      "mobileIconUrl": "/uPortal/media/skins/icons/mobile/feedback.png",
      "iconUrl": "/ResourceServingWebapp/rs/tango/0.8.90/32x32/mimetypes/text-html.png",
      "disableDynamicTitle": "true",
      "configurable": "true"
    },
    "renderOnWeb": false,
    "altMaxUrl": false
  }
}