Jump to: navigation, search

Reporting REST API

Important
Available since v9.0.002.09

Overview

This page describes Genesys Knowledge Reporting REST API.

Reporting Provisioning

Provides provision functionality for Pulse and Kibana metadata.

  1. Check Kibana index. Create and configure it with appropriate mapping if it does not exist.
  2. Kibana provisioning:
    1. Generates dashboards and visualisations metadata files
    2. Patch metadata with requested TenantId/ContactCenterID
    3. Import metadata into ElasticSearch Kibana index
  3. Pulse provisioning:
    1. Generates Pulse templates
    2. Import Pulse generated templates into Pulse

You can skip Kibana and Pulse provisioning with following application options under the reporting section:

Section Option Value Description
reporting kibana.provision true or false Enable or disable Kibana metadata provision. By default, is is set to true.
reporting pulse.provision true or false Enable or disable widget templates import into Pulse. By default it is set to true.


HTTP Description

Request
Method POST
URI /reporting/v1/provision
Content-type application/json
Body JSON Object with next fields
Field Value Mandatory Description Example
"pulseUrl" URL

http://<pulse host="">:<pulse port=""> for v.9.0.002.09
http://<pulse host="">:<pulse port="">/<Pulse base URL> for v.9.0.003.xx

yes

in the case of Pulse Provisioning being enabled, see Reporting Provisioning section.

URL to Pulse server, where generated dashboards will be imported. "http://demosrv:8040" for v.9.0.002.09 or "http://demosrv:8040/pulse" for v.9.0.003.xx
"pulseUser" String yes

in the case of Pulse Provisioning being enabled, see Reporting Provisioning section.

Pulse user username. Required to have permissions to write data to Pulse. "default"
"pulsePassword" String yes

in the case of Pulse Provisioning being enabled, see Reporting Provisioning section.

Pulse user password "password"
"kibanaTenantName" String no Custom name for Description section of Dashboards and Visualizations. If not specified, ContactCenterID value is taken. "Example Tenant Name"
Headers
Name Value Mandatory Description
ContactCenterID UUID no If specified, contains Contact Center ID.
If not specified, works like "on-prem" installation.
Response
Content-type application/json
HTTP codes
200 - OK

Provision was success.

Response Body Example

{
   "status": {
     "code": 200,
     "message": "Ok"
   },
   "data": {
     "provisionLog": {
       "log": [
         "Kibana Provision - DONE",
         "Pulse Provision - DONE"
       ]
     }
   }
}


400 - Required request body field is missing

In the case if required parameter is missed

Response Body Example

{
  "status": {
    "code": 651,
    "message": "Field [pulseUser] is required. String type. For example [default]"
  }
}

500 - General server error

Provision was failed on any step described steps aboe. Response body includes related error message.

Response Body Example

{
  "status": {
    "code": 500,
    "message": "Unable to import Pulse templates on the initialization phase :Failed to connect http://demosrv:8081"
  }
}

Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on November 2, 2018, at 10:37.