Versions Compared

Key

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

REST API Interfaces describes the Endpoints on GET and POST methods of various OLAP endpoints exposed via RESTful web service.

Topics Covered

  • GET method of REST Endpoints
  • POST method of REST Endpoints

Base Path: https:// <hostname>//eagle/report/v1/<supported feature>

REST Endpoint output defaults to JSON Format.  In addition, the Endpoints are in camel casing and case sensitive.

GET method of REST Endpoints

GET method of OLAP RESTful web service is used to read/request the data from the Eagle data warehouse.  Below are the list of GET Endpoints supported by OLAP RESTAPI.



 Details on individual GET Endpoints

 

reportProfiles: A GET request to return a list of report profiles.

This gives the profile names of all types of Performance Calculations, OLAP Reports and Advance reports.


Resource path: /eagle/report/v1/reportProfiles

Examples:

Web Browser

https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/reportProfiles

Curl

curl -u user:password “https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/reportProfiles

Sample response:

[
    {
        "instance": 257,
        "profileName": "13F Report",
        "reportType": "Advanced Reporting ",
        "updateUser": "BASELINE ADMIN",
        "updateDate": 1398830400000
    }
]


  

fields: A GET request to return a list of fields.

This includes all types of like Regular fields, Advance fields, Special fields, Performance fields etc.

Resource path: /eagle/report/v1/fields

Examples:

Web Browser

https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/fields

Curl

curl -u user:password “https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/fields

Sample response:

[
    {
        "id": 139,
        "description": "i Settlement Date",
        "indicator": "T",
        "type": "Date",
        "updateSource": "REGFA",
        "updateDate": 1268884800000
    }
]


fieldsByIndicator: A GET request to return the list of report fields by field indicator.

Fields of all types are assigned with an indicator respective to the database it belongs to and those are fetched with a filter mentioned in this endpoint.


Resource path: /eagle/report/v1/fieldsByIndicator/{fieldIndicator}

Examples:

Web Browser

https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/fieldsByIndicator/H

Curl

curl -u user:password “https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/fieldsByIndicator/H

Sample response:

[
    {
        "id": 143,
        "description": "i Book Value (lot)",
        "indicator": "H",
        "type": "Numeric",
        "updateSource": "REGFA",
        "updateDate": 1268884800000
    }
]


entities: A GET request to return a list of report entities.

This includes all types of entities like Portfolios, Performance composites, Reporting Composites, Entity List etc.

Resource path: /eagle/report/v1/entities

Examples:

Web Browser

https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/entities

Curl

curl -u user:password “https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/entities

Sample response:

[
   {
"id":"23980",
"name":"JKAUMC9",
"type":"COMP"
    },
   {
"id":"10120",
"name":"ALLGIPS ",
"type":"LIST"
    }
]


entityById: A GET request to return an entity based on its Id.        

This is to filter a specific entity using an 8-digit entity id.

Resource path: /eagle/report/v1/entity/{entity id}

Examples:

Web Browser

https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/entity/LTTEST02

Curl

curl -u user:password “https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/entity/LTTEST02

Sample response:

[
   {
       "id": "LTTEST02",
       "name": "LTTEST02",
       "type": "PORT"
   }
]

For another Entity

[

  {   "id": "JKAUMC1",
      "name": "JKAUMC1 Entity Name",
      "type": "ACOM"
  }
]


entitiesByEntityNameLike: A GET request to return a list of entities that contain the specified value in the Entity name. This is to apply filters on the Entity name to query the list of Entities matching with the entity name filter.

Resource path: /eagle/report/v1/entitiesByEntityNameLike/{entity name}

Examples:

Web Browser

https://o171-q001-w01.eagleinvsys.com/eagle/report/v1/entitiesByEntityNameLike/JKA

Curl

curl -u user:password “https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/entitiesByEntityNameLike/JKA

Sample response:

[
  {
        "id": "JKOPTST2",
        "name": "COPYJKACOM23 ",
        "type": "ACOM"
    }, {
        "id": "JKACOM36",
        "name": "Copy of JKACOM3 ",
        "type": "ACOM"
    }
]

entitiesByType: A GET request to return a list of entities by entity type.

This is my first content.includes all types of entities like Portfolios, Performance composites, Reporting Composites, Entity List, Custom index etc. This endpoint is used to filter the entities by entity type.

Resource path: /eagle/report/v1/entitiesByType/{entity type}

Examples:

Web Browser

https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/entitiesByType/COMP

Curl

curl -u user:password “https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/entitiesByType/COMP

Sample response:

[
 {
        "id": "JKTXC34 ",
        "name": "JK DQM VOL CMP34              ",
        "type": "COMP"
    },
    {
        "id": "JKTXC35 ",
        "name": "JK DQM VOL CMP35              ",
        "type": "COMP"
    }
]

POST method of REST Endpoint

‘adhocReport’ is a feature supported to extract OLAP report output using both POST and GET method. This will run a PACE report service based on request payload input parameters in JSON format.

Request Formats:

POST

URL :   https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/adhocReport

Payload:


"reportName": "string", 
"entityId": "string", 
"beginDate": "YYYYMMDD",
"endDate": "YYYYMMDD", 
"fields": "string",
"outputFormat": "JSON/ JSON2/ CSV/ TSV/ XLS/ ERX"
}

GET

URL: https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/adhocReport?  reportName=******&entityId=****,****&beginDate= YYYYMMDD &endDate= YYYYMMDD &fields= 7377,7373,11429,11779,11780&outputFormat=JSON JSON/ JSON2/ CSV/ TSV/ XLS/ ERX


Details of input parameter and its values in POST request payload and GET Request URL String of ‘adhocReport’ endpoint to extract and OLAP report data.

Input Parameter

Description

reportName

Name of the Report.  As name indicates, report name should be provided in string format.

entityId

Single entity Id or multiple entity Id’s with comma (,) or tilde (~) as separator should be provided in string format.

beginDate

Beginning date of the report should be provided in this particular format (YYYYMMDD).

endDate

End Date of the report should be provided in this particular format (YYYYMMDD).

fields

§  Single field Id or multiple field Id’s with comma (,) or tilde (~) as separator should be provided in string format.

§  Fields related to entity or security characteristic should be given along with calculation or other performance fields.

outputFormat

§  Provide any one output format from the list JSON, JSON2, CSV, TSV, XLS, ERX to receive response in that particular format.

§  Any format apart from these given options will get you response in JSON2 format (default).


Note:

Mandatory/Required parameters: reportName, beginDate, endDate, outputFormat

Optional parameters: fields, entities. If not given or given as empty string will submit and generate report with all fields and entities mapped with that respective report profile.

 

 Sample POST Request with Payload:

Request URL:   https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/adhocReport

Payload:

{
  "reportName": "AG Total Level PAC",   
   "entityId": "MTHREN10,MTHREN9",
  "beginDate": "20190102",
   "endDate": "20190102",
  "fields": " ", 
  "outputFormat": "JSON"
}

Postman Reference:

GET METHOD:

Sample Request URL:

https://o171-q001-ww01.eagleinvsys.com/eagle/report/v1/adhocReport?reportName=JSON_Structural change&entityId= MTHREN10, MTHREN9&beginDate=19800302&endDate=19800302&fields= 7377, 7373, 11429, 11779, 11780&outputFormat=JSON


Postman Reference:

Image Added

Both GET and POST method API request for ADHOC submit with overrides will return the same response, provided with same data as query string or JSON.

As mentioned earlier, to get responses in a particular format, you can choose from the given options (JSON, JSON2, CSV, TSV, XLS, ERX) and get the required responses in that particular format, by default it will give you response in JSON2 format.


Appendix: Examples of API Uses

This Appendix provides example of uses of the Eagle data warehouse MC2 REST API with various programming languages.

Topics Covered in This Appendix:

  • Submitting Python Commands to invoke RESTful web service
  • Submitting Java Commands to invoke RESTful web service

Submitting Python Commands to invoke RESTful web service

Sample code snippets for POST and GET method calls using the programming language Python.

 Image Added

 Image Added

Submitting JAVA Commands to invoke RESTful web service

Sample code snippets for POST and GET method calls using the programming language JAVA.

   Image Added

   Image Added