About the Yellowfin JavaScript API
The Yellowfin JavaScript API can be used to:
- create custom logic in a Code Mode dashboard from within Yellowfin (to customize the user experience within Yellowfin, or to embed application logic into a dashboard); and,
- embed Yellowfin content into other web applications and to manipulate that content — including reports (tables, charts and canvas) as well as entire dashboards (both canvas and traditional grid style).
The API supports two broad methods for embedding content:
- Embed links: this link can be obtained from within the Yellowfin application, and used to simply embed a report, chart or dashboard into your application. Various parameters can be appended to the link to provide some control over the look and behaviour of the embedded content.
- Advanced API: the advanced API allows more dynamic and flexible control over embedded content. A rich set of API functions are available that allow many elements of embedded content to be programmatically controlled.
Note: Version 3 of this API was first released with Yellowfin Version 9, and supersedes and replaces the existing Version 2 API. Until otherwise advised, the Version 2 API will continue to be supported but will not be enhanced. Information on this legacy API can be found here.
About this guide
This guide is divided into the following broad sections:
- An overview of how the JS API components are set up
- Using the JS API in a Code Mode Dashboard
- Using the JS API to embed Yellowfin content. This section describes the basic prerequisites required to use the JS API, and then provides detail on how to embed content using the Embed Link method and the Advanced API method.
- Detailed API references for each sub-API, including:
- Advanced API
- Dashboards API
- Sub Tabs API
- Report API
- Filters API
- LoaderEvents API
- Widget API
Each API reference contains:- An overview and a description of the purpose of the API
- Any properties if applicable
- A function reference (Description, parameters, returns, code snippet)
- An event reference
- Limitations - such as whether a feature can be used in code mode, embedding mode or both.
Prerequisites
Enabling CORS
The Yellowfin JavaScript API is dependent on Cross Origin Resource Sharing(CORS). By default, any CORS request that is made to the Yellowfin server will be rejected. The first thing you will need to do is enable CORS requests from the server you will be using the JS API on.
You can do this by going to the Admin Console in Yellowfin and adding the server URL(s) to the Allowed Origins field. This can be found in Administration -> Configuration -> System -> General Settings
You may enter more than one URL.
Once this is enabled on your Yellowfin server you can embed content.
Creating Yellowfin Content
Any content to be embedded must first exist in Yellowfin. The various techniques involved in creating Yellowfin content, such as data source connections, views, reports, charts and dashboards, are all fully described elsewhere in this wiki.