Overview of Actuate APIs
Actuate provides software development tools as a collection of APIs that support a developer designing new Actuate applications or extending or customizing existing applications. The APIs are provided as libraries, plug-ins, or application extensions.
Each API can be used independently unless there is an explicit prerequisite. For example, the iHub API, an Actuate application extension, is an extension of the BIRT Event Model, an Eclipse BIRT plug-in, and therefore cannot be implemented without the Event Model included in the server application libraries.
API libraries overview
Actuate APIs libraries are capable of supporting independent applications as well as extending functionality in applications that provide API integration points. Actuate provides:
Information Delivery API (IDAPI)
IDAPI provides libraries for server-side data integration and manipulation using Simple Object Access Protocol (SOAP) messaging. IDAPI messages are defined by a Web Service Definition Language (WSDL) schema file located at
http://<server name>:8000/wsdl/v11/axis/all.
IDAPI supports the Report Server Security Extension (RSSE). Use IDAPI to perform tasks on a volume, such as file administration, user administration, and running jobs.
JavaScript API (JSAPI)
JSAPI provides libraries for web and client-side visualizations using the JavaScript programming language. JSAPI is available to iHub web clients using the iportal context in the iportal\jsapi folder.
Use JSAPI in a web page to embed reports, Reportlets, and gadgets in a dashboard and to modify the behavior of the Actuate Viewer. Use JSAPI in a report design to enhance interactivity.
Online Archive Driver API
Online Archive Driver API provides libraries that are a SOAP-based interface between BIRT iHub and external archive software.
Use Online Archive Driver API for automating the aging and archiving processes for items in a volume
API plug-ins overview
Eclipse BIRT plug-ins are function-specific libraries for enhancing BIRT applications with additional features such as security, database integration, encryption, and data objects using Eclipse. Most Eclipse BIRT plug-ins are built using the Java programming language, but may support HTML, XML, JavaScript, SQL, or custom command sets.
Actuate develops and supports many Eclipse BIRT plug-ins, both open source and commercial. The APIs are available to BIRT Designer Professional as plug-ins in the eclipse\plugins folder and to iHub as JAR files in the BIRT iHub installation in the $ACTUATE_HOME\modules\BIRTiHub\iHub\Jar\BIRT\lib folder. BIRT Designer Professional also provides the JAR files in the
iportal\WEB-INF\lib folder in the com.actuate.birt.report.viewer plug-in.
Report Engine API
A set of open source Java packages that provides access to all the tasks that create a report from a report design or a report document. The org.eclipse.birt.report
.engine.api.* packages in the engineapi.jar file contains this API.
Use the Report Engine API to set parameter values, run a report design, and render a report document to one or more output formats.
Design Engine API or model API
A set of open source Java packages that provides access to the content and structure of a report design, a template, or a library. The org.eclipse.birt.report
.model.api.* packages in the modelapi.jar file contain the components of this API.
Use the Design Engine API to modify the structure of an existing report design or to create a completely new report design.
Chart Engine API
A set of open source Java packages used to create and modify chart elements. This API supports charting in a stand-alone application or, in conjunction with the Report Engine and Design Engine APIs, in a report design. The org.eclipse.birt.chart.* packages in the chartengineapi.jar file contain the components of this API.
Use the Chart Engine API to modify an existing chart element or to create a completely new chart element. Extend the chart element to provide new chart types.
BIRT scripting
A set of Java packages that enables creation of custom code to control various aspects of report creation and interactivity. BIRT scripting supports JavaScript and Java functions. Script handling follows the BIRT Event model. This model provides support for event registration and triggers initiated from BIRT content or the server environment. The org.eclipse.birt.report.engine.api.script.* packages in the scriptapi.jar file contain this API and model.
Use BIRT scripting in event handlers and in expressions.
An expression syntax similar to the syntax used in Excel formulas. EasyScript supports formula and data manipulations using its own markup. The com.actuate.script.* plug-ins provide this scripting syntax and user interface.
Use EasyScript to write expressions in BIRT Designer Professional, Interactive Viewer, and Report Studio.
Dashboard and gadgets
A plug-in that supports arranging data into interactive visualizations that can deployed individually. Dashboards and gadgets use JavaScript to control their functionality. Supported gadgets include Google gadgets that display dynamic web content using HTML and JavaScript. The com.actuate.birt.report.model
.api.dashboard package in the modelapi.jar file contains this API.
Use the dashboard and gadgets API to enhance dashboard and gadget functionality.
BIRT emitters
Plug-ins that support generating content in different formats, such as PDF, HTML, CSV, and so on. The org.eclipse.birt.report.engine.emitter.* and com.actuate.birt.report.engine.emitter.* plug-ins provide the content emitters.
Use the emitter APIs to customize the built-in emitters to change their behavior or to create a new emitter to generate output in an additional format.
BIRT data connectors
Connectors that implement drivers to establish connections with specific database or other data source types. For example, Actuate provides connectors for Oracle, MySQL, and flat file data source types. You can use database connectors in IDAPI applications, Report Engine applications, Data Objects, or as the basis for custom database connectors. The org.eclipse.birt.report.data.oda.* and com.actuate.data.oda.* plug-ins provide the data connectors.
Use the Open Data Access (ODA) standard to create custom data connectors to access data from additional data sources.
Application extensions overview
Actuate application extensions provide additional functionality to commercial Actuate products, such as BIRT Viewer or iHub.
BIRT Viewer Java Extension
A commercial implementation of the BIRT Design Engine API that expands the capabilities of the Actuate BIRT Viewer. This API is provided by the com.actuate.birtviewer.extension package in com.actuate.iportal.jar, which is located in the $ACTUATE_HOME\modules\BIRTiHub\iHub\web\iportal
\WEB-INF\lib folder.
Use the BIRT Viewer Java extension API to implement event handlers that fire when a user views or interacts with the report.
Data Object API
A Java API extension used to create and alter data objects. The com.actuate.birt
.report.model.api package in the modelapi.jar file contains this API extension.
Use the Data Object API to create, alter, and refresh data objects, based on custom conditions or events.
iHub API
An Event Model extension that provides a report with access to the iHub server environment for specific logistical operations. This extension is provided in $ACTUATE_HOME\modules\BIRTiHub\iHub\reportengines\lib\jrem.jar.
Use the iHub API in an event handler in a report design to customize report content based on conditions such as the user credentials, volume, or the web browser used to view the report.
iPortal Security Extension (IPSE)
An API extension that supports custom security adapters to implement single‑sign on and download security features. The iPortalSecurityAdapter class is provided in com.actuate.iportal.jar, which is located in the $ACTUATE_HOME
\modules\BIRTiHub\iHub\web\iportal\WEB-INF\lib folder.
Use IPSE to customize and control the user login and authentication process.
Report Server Security Extension (RSSE)
A SOAP-based security module that creates individual security protocols for consumable content, for example by using an existing Lightweight Directory Access Protocol (LDAP) implementation to control access to a volume. RSSE is based on the IDAPI and can implement a highly granular security scheme for all BIRT content.
Use RSSE to implement external authentication or external registration, or to customize page-level security.
The REST API is a resource extension installed with BIRT iHub that responds to RESTful requests. The REST API adheres to the REST standard, a strategy for developing web and mobile components that are platform and language independent, require very little time to implement, and that use minimal client and server resources.
Use the REST API to access and manage dynamic data built with Actuate BIRT technology and generate new documents for distribution. Use the REST API to deliver BIRT content and data from BIRT iHub to any mobile or web application.
Overview of other application development tools
Actuate provides an extension to ANSI Structured Query Language (SQL) syntax, called Actuate SQL. This syntax is supported by Actuate information objects. Information Object Query Builder provides a graphical interface to build queries using Actuate SQL. For a complete description of Actuate SQL syntax, see Designing Information Objects.
Actuate reports and dashboards support the use of the Highcharts JavaScript API to customize HTML 5 charts, such as providing interactivity or changing the appearance of an axis, a series, or a data point. For more information about this API, see the Highcharts reference documentation at