Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Our product can integrate with a variety of business intelligence (commonly called BI) toolstools that offer additional insights into your object. By configuring new Module Plugins with the category “Business Intelligence”“Insights”, MediaHaven will produce a list of reports by combining all reports across all plugins of this category.

...

A connector of the category “Business Intelligence” “Insights” must implement the following 3 methods

GET /reports

Returns a list of embeddable report URLs. This means those URLs can be safely embedded into a 3rd party website, specifically the MediaHaven frontend. If the BI tool wants to protect itself against tampering of the URL by the end-user (e.g. changing a parameter), then the connector should produce a signed URL which is inherently tamper-proof.

Optional parameters

Depending on the application and the authorizations of the user the following parameters can provided with this GET request.

...

Parameter

...

Usage

...

Example

...

collection

...

When the installation contains multiple applications, then the collection parameter specifies which application it concerns such that a different list of reports can be returned.

...

Seriesregister, e-Depot

...

  • filter.organisation_long_name

  • filter.organisation_short_name

  • filter.organisation_id

...

When the user has no access across all organisations, then these parameters restrict the results that should be displayed in the report to this organisation. Specifically, if the user has the function ADMIN_VIEW_ALL_ORGANISATIONSthen they can see installation-wide reports.

...

The organisation of the user

Expected headers

Code Block
x-api-key: <reporting engine api key>

Output

...

titleExample

...

languagejson

...

  1. https://mediahaven.atlassian.net/wiki/spaces/CS/pages/4652335133/Insights+Connector+API+contract#POST-%2Fanalyze

Common

For all methods the following HTTP header is provided:

Code Block
x-api-key: <API key for the downstream service>

POST /analyze

Analyzes the object such that insights can be requested for this object when the analysis is completed. The method is asynchronous, meaning it does not need to wait until the analysis is completed.

Input

The input is a JSON body with the following properties

Property

Description

Metadata

The standard JSON representation of the metadata as used in the MediaHaven REST API.

Config

The custom properties configured on the plugin → https://mediahaven.atlassian.net/wiki/spaces/CS/pages/4438884395/Module+Plugins#Custom-properties

Response / Output

  • The HTTP response 204 No Content when the analysis was successfully started

Input Example

Expand
Code Block
{
  "Config": {
    "CustomPropertyA" : "example"
  },
  "Metadata": {
    "Descriptive": {
        "IdTitle": 123,
        "Label":My object"label",
        "Type": "Type"
 ...
    }
  }
 ]
  },
  {
    "EmbedUrl": "https://mh-dev.mediahaven.com/reporting/embed/dashboard/XYZ#bordered=true&titled=true",
    "Id": 124,}

GET insights/

Returns the list of available insights on the object without returning the detail of each insight.

Input

The input is a JSON object with the following properties

Property

Description

RecordId

The record ID of the object in question

Config

The custom properties configured on the plugin → https://mediahaven.atlassian.net/wiki/spaces/CS/pages/4438884395/Module+Plugins#Custom-properties

Response / Output

The output is a JSON array of JSON objects with the following properties

Property

Description

Name

The name of the insight

Id

The ID of the insight such that it can be requested indivudually.

Example

Expand
titleInput & Output

Input

Code Block
languagejson
{
  "Config": {
    "Label": "My report B",
    "Collection"CustomPropertyA" : "Collectionexample",
    "Params": [
      {
        "Id": 124},
        "Label"RecordId": "label",11fba5aead9c4ea28b139a968f06bb2e33826b3eb5d24f57b6e13f0380617e66
        "Type":
"Type"
      }
    ]
  }
]

GET /reports/:id

Returns a specific report with the ID

Optional parameters

Same as the general GET method.

Expected headers

Code Block
x-api-key: <reporting engine api key>

Output

Expand
titleExample
Code Block
languagejson

Output

Code Block
[
   {
  "EmbedUrl": "https://mh-dev.mediahaven.com/reporting/embed/dashboard/ABC#bordered=true&titled=true",   "IdName": 123"Summary",
  "Label": "My report A",   "CollectionId": "CollectionSUMMARIES",

 "Params": [ },
   {
      "IdName": 123,
      "Label": "label"Word cloud",
      "TypeId": "TypeWORD_CLOUD"

   }
  ]
}