Get Application Datasource

get

/essbase/rest/v1/applications/{applicationName}/datasources/{datasourceName}

Returns details about the specified application-level Datasource.

Request

Path Parameters
Back to Top

Response

Supported Media Types

200 Response

OK

Datasource details returned successfully.

Body ()
Root Schema : datasource
Type: object
Show Source
Nested Schema : ColumnsType
Type: object
Show Source
Nested Schema : headers
Type: array
Show Source
Nested Schema : queryParameters
Type: array

Parameter implementation details, if the Datasource query is parameterized. For example, if the query includes a ? placeholder for passing a parameter, as in the following query: select * from profit_data where year=?, then you need define the implementation details.

Show Source
Nested Schema : widths
Type: array
Show Source
Nested Schema : Column
Type: array
Show Source
Nested Schema : ColumnType
Type: object
Show Source
Nested Schema : HeaderType
Type: object
Show Source
Nested Schema : QueryParamsInfo
Type: object
Show Source
  • A fixed, default parameter value that the Datasource should use as a fallback in case the parameter has an invalid context at runtime. Example: Jan. Required only if the Datasource query is parameterized (it includes a ? placeholder for passing a parameter) AND the placeholder is not intended to reference a substitution variable nor a user-defined function developed in the external source.

  • Ordinal index of the Datasource query parameter. For example, 1 for the first parameter, 2 for the second parameter, etc.

  • Optional name for the Datasource query parameter, meaningful for your use case. For example, instead of Param1 you can use param_G_month to indicate that the parameter uses a global variable for the current month, or you can rename it to param_appName_month to indicate that the parameter uses an application-level variable for the current month.

  • true if the Datasource query parameter is required, or false otherwise.

  • If useSubVariable is true, the name of an Essbase substitution variable.

  • Allowed Values: [ "STRING", "DOUBLE", "DATE", "TIMESTAMP", "LONG" ]

    Datatype of the Datasource query parameter.

  • true if the Datasource query parameter references an Essbase substitution variable, or false otherwise.

400 Response

Bad Request

Failed to get Datasource details.

Back to Top

Examples

The following examples show how to get details about specific application-level Datasources. A Datasource can be associated with an external database, a file in the catalog, or another Essbase cube.

These examples use cURL to access the REST API from a Windows shell script. The calling user's ID and password are variables whose values are set in properties.bat.

Script with cURL Command - Oracle Database

The following example gets details about a Datasource for Oracle Database, defined on application Sample.

call properties.bat
curl -X GET "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/datasources/OracleDB_DS?links=none" -H Accept:application/json -u %User%:%Password%

Example of Response Body

The following example shows the contents of the response body in JSON format.

{
  "name" : "OracleDB_DS",
  "description" : "Datasource for ORCL current month only",
  "connection" : "SAMPLE.OracleDB",
  "type" : "DB",
  "columns" : {
    "Column" : [ {
      "name" : "DIMENSION_PRODUCT",
      "type" : "STRING",
      "index" : 1,
      "system" : false
    }, {
      "name" : "DIMENSION_MARKET",
      "type" : "STRING",
      "index" : 2,
      "system" : false
    }, {
      "name" : "DIMENSION_YEAR",
      "type" : "STRING",
      "index" : 3,
      "system" : false
    }, {
      "name" : "DIMENSION_SCENARIO",
      "type" : "STRING",
      "index" : 4,
      "system" : false
    }, {
      "name" : "SALES",
      "type" : "DOUBLE",
      "index" : 5,
      "system" : false
    }, {
      "name" : "COGS",
      "type" : "DOUBLE",
      "index" : 6,
      "system" : false
    }, {
      "name" : "MARKETING",
      "type" : "DOUBLE",
      "index" : 7,
      "system" : false
    }, {
      "name" : "PAYROLL",
      "type" : "DOUBLE",
      "index" : 8,
      "system" : false
    }, {
      "name" : "MISC",
      "type" : "DOUBLE",
      "index" : 9,
      "system" : false
    }, {
      "name" : "INITIAL_INVENTORY",
      "type" : "DOUBLE",
      "index" : 10,
      "system" : false
    }, {
      "name" : "ADDITIONS",
      "type" : "DOUBLE",
      "index" : 11,
      "system" : false
    } ]
  },
  "query" : "select * from SB_DATA where dimension_year=?",
  "queryParameters" : [ {
    "index" : 1,
    "name" : "Param1",
    "required" : false,
    "useSubVariable" : true,
    "subVariableName" : "CurrMonth",
    "type" : "STRING"
  } ],
  "links" : [ ]
}

Script with cURL Command - Essbase

The following example gets details about a Datasource that is pointing to another Essbase cube.

call properties.bat
curl -X GET "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/datasources/Essbase2_DS?links=none" -H Accept:application/json -u %User%:%Password%

Example of Response Body - Essbase

The following example shows the contents of the response body in JSON format.

{
  "name" : "Essbase2_DS",
  "description" : "Essbase instance 2",
  "connection" : "SAMPLE.Essbase2",
  "type" : "ESSBASE",
  "columns" : {
    "Column" : [ {
      "name" : "Product",
      "type" : "STRING",
      "index" : 1,
      "system" : false
    }, {
      "name" : "Market",
      "type" : "STRING",
      "index" : 2,
      "system" : false
    } ]
  },
  "query" : "SELECT\n  {Market}\nON COLUMNS,\n  {Product}\nON ROWS\nFROM Sample.Basic",
  "application" : "Sample",
  "cube" : "Basic",
  "queryParameters" : [ ],
  "links" : [ ]
}

Script with cURL Command - File

The following example gets details about a Datasource that is associated with a file in the catalog.

call properties.bat
curl -X GET "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/datasources/UserDetails_DS?links=none" -H Accept:application/json -u %User%:%Password%

Example of Response Body - File

The following example shows the contents of the response body in JSON format.

{
  "name" : "UserDetails_DS",
  "description" : "User details repository",
  "connection" : "SAMPLE.UserDetails",
  "type" : "DELIMITEDFILE",
  "delimiter" : "Comma",
  "headerRow" : 1,
  "startRow" : 1,
  "columns" : {
    "Column" : [ {
      "name" : "USERNAME",
      "type" : "STRING",
      "index" : 0,
      "system" : false
    }, {
      "name" : "COUNTRY",
      "type" : "STRING",
      "index" : 1,
      "system" : false
    }, {
      "name" : "COSTCENTER",
      "type" : "STRING",
      "index" : 2,
      "system" : false
    }, {
      "name" : "CURRENCY",
      "type" : "STRING",
      "index" : 3,
      "system" : false
    }, {
      "name" : "MANAGERNAME",
      "type" : "STRING",
      "index" : 4,
      "system" : false
    }, {
      "name" : "COMPANYNAME",
      "type" : "STRING",
      "index" : 5,
      "system" : false
    }, {
      "name" : "BUSINESSUNIT",
      "type" : "STRING",
      "index" : 6,
      "system" : false
    }, {
      "name" : "OFFICE",
      "type" : "STRING",
      "index" : 7,
      "system" : false
    } ]
  },
  "queryParameters" : [ ],
  "links" : [ ]
}
Back to Top