NAV Navbar
Logo cerner
Ruby Shell

Business Intelligence Public API v1

Business intelligence (BI) is the process of gaining insight from data. This API provides the building blocks necessary to represent the structure of data and import the data into business intelligence solutions such as BusinessObjects and Tableau. Specifically, a data model represents the data sets that make up all the data needed for a domain and those data sets’ structure and relationships to each other. After a data model is defined and published, the data inside can be used to create reports and data discovery experiences with visualizations to enable users to view and understand the data.

URL: https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1

Terminology

Term Definition
data set alias The data set added to the data model, for example, Pharmacy Orders.
field alias The set of fields in the data set being added to the data model, for example, Order Amount or Drug Name in Pharmacy Orders.
Note: we can also have custom or derived fields added as field alias using the existing field aliases of the data set, for example: Maximum of Order Amount
join Defines a relationship between two data sets added to a data model.
filter Defines filters on the data sets of the data model, for example, filter all the data sets based on field.
Note: Filter’s scope can be defined, it can apply on all the data set aliases of the data model(global filters) or only a particular data set alias(local filters).
publication Holds the publish to BI tools status information. For example, POST of the /data-models will return the background processing job information, consumer has to use GET /publications operation to check the status of this job.
version After every successful publication of data model, a version(copy) of published data model will be created. This can prove handy to support the rollback in case of publish failure.
authorization This manages the members of the data models, i.e, members can be added, removed or modified. For example, The member details along with access level permission on the data model.

To help understand these concepts, consider an analogy of generating an annual report of a Pharmacy department. In this scenario, we would need all the information like sales, purchases, inventory, orders, etc., to be combined together to provide a conceptual insight to the end user.

In this case:-

Data Models

Data models enable you to create and manage data sets, relationships between data sets, and the semantic business layers that are created and published.

Create a Data Model

Example Request:




require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Content-Type' => 'application/json',
  'Accept' => 'application/json'
} 

result = HTTParty.post('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models', headers: headers, body: {"name":"Demo Data Model","discoverability":"PRIVATE","publishTo":["BUSINESS_OBJECTS","TABLEAU"],"description":"This is a test model created for a demonstration.","dataSetAliases":[{"name":"Pharmacy Orders","description":"The details of the drug that specify the name, dosage, strength of each ingredient, and so on.","dataSetMnemonic":"PH_D_Pharmacy_Order","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug specified in the orders.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"Dosage","description":"The appropriate dosage details.","dataType":"STRING","fieldMnemonic":"Dosage","visible":"true"}]},{"name":"Pharmacy Inventory","description":"The stock details of all the drugs available in the inventory.","dataSetMnemonic":"PharmacyInventory","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug available in the inventory records.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"quantity","description":"The availabile quantity of the drug in the inventory.","dataType":"INTEGER","fieldMnemonic":"quantity","visible":"true"},{"name":"max of available drug","description":"A derived field to retrieve the maximum available drug in the inventory.","calculationFunction":{"functionName":"max","fieldAliasName":"quantity"},"visible":"true"}]}],"joins":[{"joinType":"OUTER_FULL","operator":"=","leftFieldAlias":{"dataSetAlias":"Pharmacy Orders","fieldAlias":"Drug Name"},"rightFieldAlias":{"dataSetAlias":"Pharmacy Inventory","fieldAlias":"Drug Name"}}],"filters":[{"dataSetAliasName":"Pharmacy Orders","fieldAliasName":"Dosage","operator":"LIKE","value":"As per doctor's prescription","global":"true","dataType":"STRING"}]}.to_json )

print JSON.pretty_generate(result)




# You can also use wget
curl -X POST https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models \
-H 'Authorization: {auth_header}' \
-H 'Content-Type: application/json' \ \
-H 'Accept: application/json' \
-d {"name":"Demo Data Model","discoverability":"PRIVATE","publishTo":["BUSINESS_OBJECTS","TABLEAU"],"description":"This is a test model created for a demonstration.","dataSetAliases":[{"name":"Pharmacy Orders","description":"The details of the drug that specify the name, dosage, strength of each ingredient, and so on.","dataSetMnemonic":"PH_D_Pharmacy_Order","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug specified in the orders.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"Dosage","description":"The appropriate dosage details.","dataType":"STRING","fieldMnemonic":"Dosage","visible":"true"}]},{"name":"Pharmacy Inventory","description":"The stock details of all the drugs available in the inventory.","dataSetMnemonic":"PharmacyInventory","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug available in the inventory records.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"quantity","description":"The availabile quantity of the drug in the inventory.","dataType":"INTEGER","fieldMnemonic":"quantity","visible":"true"},{"name":"max of available drug","description":"A derived field to retrieve the maximum available drug in the inventory.","calculationFunction":{"functionName":"max","fieldAliasName":"quantity"},"visible":"true"}]}],"joins":[{"joinType":"OUTER_FULL","operator":"=","leftFieldAlias":{"dataSetAlias":"Pharmacy Orders","fieldAlias":"Drug Name"},"rightFieldAlias":{"dataSetAlias":"Pharmacy Inventory","fieldAlias":"Drug Name"}}],"filters":[{"dataSetAliasName":"Pharmacy Orders","fieldAliasName":"Dosage","operator":"LIKE","value":"As per doctor's prescription","global":"true","dataType":"STRING"}]}

POST /data-models

Creates a data model along with all its child entities.

Parameters

Parameter In Type Required Default Description Accepted Values
body body postDataModels true N/A No description -

Response Statuses

Status Meaning Description Schema
202 Accepted Accepted None
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden

Response Headers

Status Header Type Format Description
202 Location string The URL location of the processing job.

Retrieve a List of Data Models

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "items": [
    {
      "id": "87d015cf-2ae3-48d4-822c-9fff4d5b8570",
      "name": "Demo Data Model",
      "description": "Data model to derive insights for the pharmacy inventory.",
      "discoverability": "PRIVATE",
      "dataSetAliases": [
        {
          "id": "02727833-ddd7-437c-8a83-ce38308a7ccd",
          "name": "dataSetAliasName1",
          "description": "A short description of the data set alias",
          "dataSetMnemonic": "PH_D_Provider_Taxonomy",
          "schemaMnemonic": "Schema Name",
          "fieldAliases": [
            {
              "id": "01eca1a7-e4db-4021-9883-29bc86735ada",
              "name": "fieldAliasName1",
              "description": "fieldAliasName1",
              "dataType": "STRING",
              "fieldMnemonic": "provider_id",
              "role": "DIMENSION",
              "visible": true,
              "calculationFunction": {
                "functionName": "max",
                "fieldAliasName": "quantity"
              }
            }
          ]
        }
      ],
      "joins": [
        {
          "id": "22c395e8-95b7-42d4-90f4-7501f4e9c5e3",
          "leftFieldAlias": {
            "dataSetAliasName": "dataSetAliasName",
            "fieldAliasName": "fieldAliasesName"
          },
          "rightFieldAlias": {
            "dataSetAliasName": "dataSetAliasName",
            "fieldAliasName": "fieldAliasesName"
          },
          "joinType": "OUTER_FULL",
          "operator": "="
        }
      ],
      "filters": [
        {
          "id": "62ff1317-383c-40ac-a41b-12213e565a95",
          "dataSetAliasName": "dataSetAliasName1",
          "fieldAliasName": "fieldAliasName1",
          "operator": "LIKE",
          "value": "string to be compared",
          "global": true,
          "dataType": "STRING"
        }
      ],
      "createdAt": "2019-09-13T10:49:07.000Z",
      "updatedAt": "2019-09-13T10:49:07.000Z"
    }
  ],
  "totalResults": 1,
  "firstLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models?offset=0&limit=20",
  "lastLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models?offset=0&limit=20"
}

GET /data-models

Retrieves a list of data models filtered by the specified parameters.

Parameters

Parameter In Type Required Default Description Accepted Values
name query string false N/A Filters the response by the name of the data model.
Note: The search is case-sensitive and partial matching is not supported.
-
discoverability query string false PRIVATE Filters the response by the discoverability of the data model. The following values are possible: PUBLIC, PRIVATE, HIDDEN
orderBy query string false name A comma-separated list of fields by which to sort. -name, name
associatedEntities query boolean false false Indicates whether the retrieved list of data models should include associated data set aliases, field aliases, joins, filters, and calculated fields. If the value is true, the associated resources are included in the response. If the value is false, they are not included. -
offset query integer(int32) false 0 The number of results to skip from the beginning of the list of results (typically for the purpose of paging). The minimum offset is 0. There is no maximum offset. -
limit query integer(int32) false 20 The maximum number of results to display per page. The minimum limit is 1. The maximum limit is 100. -

Response Statuses

Status Meaning Description Schema
200 OK OK DataModels
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden

Delete a Data Model

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.delete('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X DELETE https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570 \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

DELETE /data-models/{dataModelId}

Deletes a data model, including all its child data set aliases, field aliases, joins, filters, and arguments. The authorization settings applied to the data model also are deleted.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of the data model. -

Response Statuses

Status Meaning Description Schema
204 No Content No Content None
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden
404 Not Found Not Found NotFound

Update a Data Model

Example Request:




require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Content-Type' => 'application/json',
  'Accept' => 'application/json'
} 

result = HTTParty.put('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570', headers: headers, body: {"description":"This is a test model created for a demonstration.","discoverability":"PRIVATE","publishTo":["BUSINESS_OBJECTS","TABLEAU"],"dataSetAliases":[{"name":"Pharmacy Orders","description":"The details of the drug that specify the name, dosage, strength of each ingredient, and so on.","dataSetMnemonic":"PH_D_Pharmacy_Order","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug specified in the orders.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"Dosage","description":"The appropriate dosage details.","dataType":"STRING","fieldMnemonic":"Dosage","visible":"true"}]},{"name":"Pharmacy Inventory","description":"The stock details of all the drugs available in the inventory.","dataSetMnemonic":"PharmacyInventory","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug available in the inventory records.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"quantity","description":"The availabile quantity of the drug in the inventory.","dataType":"INTEGER","fieldMnemonic":"quantity","visible":"true"},{"name":"max of available drug","description":"A derived field to retrieve the maximum available drug in the inventory.","calculationFunction":{"functionName":"max","fieldAliasName":"quantity"},"visible":"true"}]}],"joins":[{"joinType":"OUTER_FULL","operator":"=","leftFieldAlias":{"dataSetAlias":"Pharmacy Orders","fieldAlias":"Drug Name"},"rightFieldAlias":{"dataSetAlias":"Pharmacy Inventory","fieldAlias":"Drug Name"}}],"filters":[{"dataSetAliasName":"Pharmacy Orders","fieldAliasName":"Dosage","operator":"LIKE","value":"As per doctor's prescription","global":"true","dataType":"STRING"}]}.to_json )

print JSON.pretty_generate(result)




# You can also use wget
curl -X PUT https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570 \
-H 'Authorization: {auth_header}' \
-H 'Content-Type: application/json' \ \
-H 'Accept: application/json' \
-d {"description":"This is a test model created for a demonstration.","discoverability":"PRIVATE","publishTo":["BUSINESS_OBJECTS","TABLEAU"],"dataSetAliases":[{"name":"Pharmacy Orders","description":"The details of the drug that specify the name, dosage, strength of each ingredient, and so on.","dataSetMnemonic":"PH_D_Pharmacy_Order","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug specified in the orders.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"Dosage","description":"The appropriate dosage details.","dataType":"STRING","fieldMnemonic":"Dosage","visible":"true"}]},{"name":"Pharmacy Inventory","description":"The stock details of all the drugs available in the inventory.","dataSetMnemonic":"PharmacyInventory","schemaMnemonic":"Schema Name","fieldAliases":[{"name":"Drug Name","description":"The name of the drug available in the inventory records.","dataType":"STRING","fieldMnemonic":"DrugName","visible":"true"},{"name":"quantity","description":"The availabile quantity of the drug in the inventory.","dataType":"INTEGER","fieldMnemonic":"quantity","visible":"true"},{"name":"max of available drug","description":"A derived field to retrieve the maximum available drug in the inventory.","calculationFunction":{"functionName":"max","fieldAliasName":"quantity"},"visible":"true"}]}],"joins":[{"joinType":"OUTER_FULL","operator":"=","leftFieldAlias":{"dataSetAlias":"Pharmacy Orders","fieldAlias":"Drug Name"},"rightFieldAlias":{"dataSetAlias":"Pharmacy Inventory","fieldAlias":"Drug Name"}}],"filters":[{"dataSetAliasName":"Pharmacy Orders","fieldAliasName":"Dosage","operator":"LIKE","value":"As per doctor's prescription","global":"true","dataType":"STRING"}]}

PUT /data-models/{dataModelId}

Updates the entire content of a data model. The child entities of the data model are replaced based on the request.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of the data model. -
body body putDataModels true N/A No description -

Response Statuses

Status Meaning Description Schema
202 Accepted Accepted DataModel
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden
404 Not Found Not Found NotFound

Response Headers

Status Header Type Format Description
202 Location string The URL location of the processing job.

Retrieve a Single Data Model

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570 \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "id": "87d015cf-2ae3-48d4-822c-9fff4d5b8570",
  "name": "Demo Data Model",
  "description": "Data model to derive insights for the pharmacy inventory.",
  "discoverability": "PRIVATE",
  "dataSetAliases": [
    {
      "id": "02727833-ddd7-437c-8a83-ce38308a7ccd",
      "name": "dataSetAliasName1",
      "description": "A short description of the data set alias",
      "dataSetMnemonic": "PH_D_Provider_Taxonomy",
      "schemaMnemonic": "Schema Name",
      "fieldAliases": [
        {
          "id": "01eca1a7-e4db-4021-9883-29bc86735ada",
          "name": "fieldAliasName1",
          "description": "fieldAliasName1",
          "dataType": "STRING",
          "fieldMnemonic": "provider_id",
          "role": "DIMENSION",
          "visible": true,
          "calculationFunction": {
            "functionName": "max",
            "fieldAliasName": "quantity"
          }
        }
      ]
    }
  ],
  "joins": [
    {
      "id": "22c395e8-95b7-42d4-90f4-7501f4e9c5e3",
      "leftFieldAlias": {
        "dataSetAliasName": "dataSetAliasName",
        "fieldAliasName": "fieldAliasesName"
      },
      "rightFieldAlias": {
        "dataSetAliasName": "dataSetAliasName",
        "fieldAliasName": "fieldAliasesName"
      },
      "joinType": "OUTER_FULL",
      "operator": "="
    }
  ],
  "filters": [
    {
      "id": "62ff1317-383c-40ac-a41b-12213e565a95",
      "dataSetAliasName": "dataSetAliasName1",
      "fieldAliasName": "fieldAliasName1",
      "operator": "LIKE",
      "value": "string to be compared",
      "global": true,
      "dataType": "STRING"
    }
  ],
  "createdAt": "2019-09-13T10:49:07.000Z",
  "updatedAt": "2019-09-13T10:49:07.000Z"
}

GET /data-models/{dataModelId}

Retrieves a single data model by ID.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of the data model. -
associatedEntities query boolean false false Indicates whether the retrieved list of data models should include associated data set aliases, field aliases, joins, filters, and calculated fields. If the value is true, the associated resources are included in the response. If the value is false, they are not included. -

Response Statuses

Status Meaning Description Schema
200 OK OK DataModel
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden

Retrieve a list of Publications for a Data Model

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/publications', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/publications \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "items": [
    {
      "id": "015e9463-b911-4195-a054-757dc31f22c3",
      "status": "FAILED",
      "errorKey": "[\"PUBLISH_TO_BO_ERROR\"]",
      "errorMessage": "Data set [\"DatasetName1\"] is not joined to any other data sets.",
      "version": 1,
      "publishedToTableau": true
    }
  ],
  "totalResults": 1,
  "firstLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/publications?offset=0&limit=20",
  "lastLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/publications?offset=0&limit=20"
}

GET /data-models/{dataModelId}/publications

Retrieves a list of publications for the specified data model. This list contains completed and in-progress publication job information.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of the data model. -
status query string false N/A The current status of the data model publication. PROCESSING, PUBLISHED, FAILED
offset query integer(int32) false 0 The number of results to skip from the beginning of the list of results (typically for the purpose of paging). The minimum offset is 0. There is no maximum offset. -
limit query integer(int32) false 20 The maximum number of results to display per page. The minimum limit is 1. The maximum limit is 100. -

Response Statuses

Status Meaning Description Schema
200 OK OK Publications
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden

Retrieve a Single Data Model Publication by ID

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/publications/015e9463-b911-4195-a054-757dc31f22c3', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/publications/015e9463-b911-4195-a054-757dc31f22c3 \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "id": "015e9463-b911-4195-a054-757dc31f22c3",
  "status": "FAILED",
  "errorKey": "[\"PUBLISH_TO_BO_ERROR\"]",
  "errorMessage": "Data set [\"DatasetName1\"] is not joined to any other data sets.",
  "version": 1,
  "publishedToTableau": true
}

GET /data-models/{dataModelId}/publications/{publicationId}

Retrieves the details of a data model’s publication status by the publication’s ID.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of the data model. -
publicationId path string true N/A The ID of a data model publication. -

Response Statuses

Status Meaning Description Schema
200 OK OK Publication
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden
404 Not Found Not Found NotFound

Retrieve a List of Published Data Model Versions

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/versions', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/versions \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "items": [
    {
      "versionNumber": 1,
      "versionLink": "http://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/{dataModelId}/versions/{versionNumber}"
    }
  ],
  "totalResults": 1,
  "firstLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/versions?offset=0&limit=20",
  "lastLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/versions?offset=0&limit=20"
}

GET /data-models/{dataModelId}/versions

Retrieves a list of published data model versions.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of a data model. -
offset query integer(int32) false 0 The number of results to skip from the beginning of the list of results (typically for the purpose of paging). The minimum offset is 0. There is no maximum offset. -
limit query integer(int32) false 20 The maximum number of results to display per page. The minimum limit is 1. The maximum limit is 100. -

Response Statuses

Status Meaning Description Schema
200 OK OK Versions
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden

Retrieve a published data model version

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/versions/1', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/versions/1 \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "name": "Demo Data Model",
  "description": "This is a test model created for a demonstration.",
  "dataSetAliases": [
    {
      "id": "02727833-ddd7-437c-8a83-ce38308a7ccd",
      "name": "dataSetAliasName1",
      "description": "A short description of the data set alias",
      "dataSetMnemonic": "PH_D_Provider_Taxonomy",
      "schemaMnemonic": "Schema Name",
      "fieldAliases": [
        {
          "id": "01eca1a7-e4db-4021-9883-29bc86735ada",
          "name": "fieldAliasName1",
          "description": "fieldAliasName1",
          "dataType": "STRING",
          "fieldMnemonic": "provider_id",
          "role": "DIMENSION",
          "visible": true,
          "calculationFunction": {
            "functionName": "max",
            "fieldAliasName": "quantity"
          }
        }
      ]
    }
  ],
  "joins": [
    {
      "id": "22c395e8-95b7-42d4-90f4-7501f4e9c5e3",
      "leftFieldAlias": {
        "dataSetAliasName": "dataSetAliasName",
        "fieldAliasName": "fieldAliasesName"
      },
      "rightFieldAlias": {
        "dataSetAliasName": "dataSetAliasName",
        "fieldAliasName": "fieldAliasesName"
      },
      "joinType": "OUTER_FULL",
      "operator": "="
    }
  ],
  "filters": [
    {
      "id": "62ff1317-383c-40ac-a41b-12213e565a95",
      "dataSetAliasName": "dataSetAliasName1",
      "fieldAliasName": "fieldAliasName1",
      "operator": "LIKE",
      "value": "string to be compared",
      "global": true,
      "dataType": "STRING"
    }
  ]
}

GET /data-models/{dataModelId}/versions/{versionNumber}

Retrieves details of published data model by version number.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of a data model. -
versionNumber path integer(int32) true N/A The version of a published data model. -

Response Statuses

Status Meaning Description Schema
200 OK OK DataModelVersion
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden
404 Not Found Not Found NotFound

Data Model Authorizations

Data model authorizations enable you to indicate the members who can access the data model. Authorized users can view and generate reports using the published data model in BI tools.

Retrieve a List of Data Model Authorizations

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "items": [
    {
      "id": "942b1a22-4e4a-49f1-880d-947548b22241",
      "member": {
        "id": "d197260b-e1b2-4e9f-ac8e-d5ed6ada2b37",
        "type": "PERSONNEL"
      },
      "role": "CONSUMER"
    }
  ],
  "totalResults": 1,
  "firstLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations?offset=0&limit=20",
  "lastLink": "https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations?offset=0&limit=20"
}

GET /data-models/{dataModelId}/authorizations

Retrieves the authorizations of a data model.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of a data model. -
offset query integer(int32) false 0 The number of results to skip from the beginning of the list of results (typically for the purpose of paging). The minimum offset is 0. There is no maximum offset. -
limit query integer(int32) false 20 The maximum number of results to display per page. The minimum limit is 1. The maximum limit is 100. -

Response Statuses

Status Meaning Description Schema
200 OK OK Authorizations
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden
404 Not Found Not Found NotFound

Add Authorizations to Data Model Members

Example Request:




require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Content-Type' => 'application/json',
  'Accept' => 'application/json'
} 

result = HTTParty.post('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations', headers: headers, body: {"authorizations":[{"member":{"id":"d197260b-e1b2-4e9f-ac8e-d5ed6ada2b37","type":"PERSONNEL"},"role":"CONSUMER"}]}.to_json )

print JSON.pretty_generate(result)




# You can also use wget
curl -X POST https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations \
-H 'Authorization: {auth_header}' \
-H 'Content-Type: application/json' \ \
-H 'Accept: application/json' \
-d {"authorizations":[{"member":{"id":"d197260b-e1b2-4e9f-ac8e-d5ed6ada2b37","type":"PERSONNEL"},"role":"CONSUMER"}]}

Example response

{
  "authorizations": [
    {
      "id": "942b1a22-4e4a-49f1-880d-947548b22241",
      "member": {
        "id": "d197260b-e1b2-4e9f-ac8e-d5ed6ada2b37",
        "type": "PERSONNEL"
      },
      "role": "CONSUMER"
    }
  ]
}

POST /data-models/{dataModelId}/authorizations

Adds authorizations to personnel or personnel groups and authorizes them as owners, collaborators, or consumers.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of a data model. -
body body postDataModelsDatamodelidAuthorizations true N/A No description -

Response Statuses

Status Meaning Description Schema
201 Created Created DataModelAuthorization
207 Multi-Status Multi Status MultiStatus
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden

Delete an Authorization of a Data Model

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.delete('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations/942b1a22-4e4a-49f1-880d-947548b22241', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X DELETE https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations/942b1a22-4e4a-49f1-880d-947548b22241 \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

DELETE /data-models/{dataModelId}/authorizations/{authorizationId}

Deletes the user content privileges of a data model.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of a data model. -
authorizationId path string true N/A The ID of the data model’s authorization record. -

Response Statuses

Status Meaning Description Schema
204 No Content No Content None
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden
404 Not Found Not Found NotFound

Update an Authorization of a Data Model

Example Request:




require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Content-Type' => 'application/json',
  'Accept' => 'application/json'
} 

result = HTTParty.put('https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations/942b1a22-4e4a-49f1-880d-947548b22241', headers: headers, body: {"role":"CONSUMER"}.to_json )

print JSON.pretty_generate(result)




# You can also use wget
curl -X PUT https://cernerdemo.api.us-1.healtheintent.com/business-intelligence/v1/data-models/87d015cf-2ae3-48d4-822c-9fff4d5b8570/authorizations/942b1a22-4e4a-49f1-880d-947548b22241 \
-H 'Authorization: {auth_header}' \
-H 'Content-Type: application/json' \ \
-H 'Accept: application/json' \
-d {"role":"CONSUMER"}

PUT /data-models/{dataModelId}/authorizations/{authorizationId}

Updates the user privileges of a data model.

Parameters

Parameter In Type Required Default Description Accepted Values
dataModelId path string true N/A The ID of a data model. -
authorizationId path string true N/A The ID of the data model’s authorization record. -
body body putDataModelsDatamodelidAuthorizations true N/A No description -

Response Statuses

Status Meaning Description Schema
204 No Content No Content None
400 Bad Request Bad Request BadRequest
401 Unauthorized Unauthorized Unauthorized
403 Forbidden Forbidden Forbidden
404 Not Found Not Found NotFound

Schema Definitions

FieldAlias

Name Type Required Description Accepted Values
id string false The unique ID of the field alias. -
name string false The alias for the field in the associated data set. -
description string false A short description of the field alias in the associated data set. -
dataType string false The data type of the associated field. NUMERIC, FLOAT, REAL, DOUBLE, INT, INTEGER, CHAR, VARCHAR, STRING, BOOLEAN, DATETIME, TIMESTAMP, TIMESTAMPTZ, DATE, BINARY, VARBINARY, BLOB
fieldMnemonic string false The name of the associated field in the data set.
NOTE: This field is NULL for a field with a calculation function.
-
role string false The role of the field. The following values are possible:
  • DIMENSION: These are the fields used to describe the data record, for example, the name and IDs.
  • MEASURE: These are the fields whose values are derived or aggregated from the DIMENSION type fields, for example, sum and average.
DIMENSION, MEASURE
visible boolean false Indicates whether the field alias is visible. -
calculationFunction CalculationFunctionDetail false The function used to calculate the field alias in BI tools. -
primaryKey boolean false Indicates whether the field is a primary key. -

CalculationFunctionDetail

Name Type Required Description Accepted Values
functionName string false

The function to be applied to derive the custom field in the BI tools using an existing field alias of the data set alias associated with the data model.

-
fieldAliasName string false The name of the field in the data set to which the calculation function should be applied. -

FieldAliasDetail

Name Type Required Description Accepted Values
dataSetAliasName string false The name of the data set alias to which the join should be applied. -
fieldAliasName string false The name of the field in the data set to which the join should be applied. -

postDataModels

Name Type Required Description Accepted Values
name string true The display name of the data model. -
discoverability string false Discoverability controls who can discover a data model of which they are not already a member. The following values are possible:
  • PUBLIC: Indicates that the data model is visible to all users and anyone can join to have access.
  • PRIVATE: Indicates that the data model is visible to all users but the users cannot join unless a data model member explicitly adds them.
  • HIDDEN: Indicates that the data model is hidden from anyone who does not have access to the data model.
PUBLIC, PRIVATE, HIDDEN
publishTo [string] true This indicates the BI tool to which the data model should be published.
NOTE: Data models can published to one or more BI tools at a time.
BUSINESS_OBJECTS, TABLEAU
description string false A short description of the data model. -
dataSetAliases [object] false

The list of data sets to be added to a data model. This includes the list of field aliases that are associated with the data set; if any calculation functions are to be applied on any of the fields, they should also be included in the field aliases list of the data set alias.

-
» name string true The alias for the data set added to the data model. -
» description string true A short description of the data set alias of the data model. -
» dataSetMnemonic string true The name of the associated data set. -
» schemaMnemonic string true The name of the schema for the associated data set. -
» fieldAliases object true The list of field aliases for the associated data set alias of the data model. -
joins [object] false The list of joins to be applied between the data sets of the data model. -
» leftFieldAlias object true The details of the left field alias of the join defined in the data set. -
» rightFieldAlias object true The details of the right field alias of the join defined in the data set. -
» joinType string true The type of join defined in the data set. -
» operator string true The operator for the join defined in the data set. -
filters [object] false The list of filters to be included on the data sets or data model. -
» dataSetAliasName string true The name of the data set alias to which the filter is applied. -
» fieldAliasName string true The name of the field alias of the data set to which the filter is applied. -
» operator string true The type of filter operator. -
» value string true This specifies the string to be matched with the value in the specified field when the filter operator is LIKE or =. -
» global boolean true Indicates whether the filter is global in scope. If the value is true, the scope of the filter is global and present in all data set aliases associated with the data model. If the value is false, the filter is in only the specified data set alias associated with the data model. -
» dataType string true The data type of the field alias. -

Unauthorized

Name Type Required Description Accepted Values
code integer(int32) true The HTTP response status code that represents the error. -
message string true A human-readable description of the error. -
errorDetails [string] false A list of additional error details. -

Forbidden

Name Type Required Description Accepted Values
code integer(int32) true The HTTP response status code that represents the error. -
message string true A human-readable description of the error. -
errorDetails [string] false A list of additional error details. -

BadRequest

Name Type Required Description Accepted Values
code integer(int32) true The HTTP response status code that represents the error. -
message string true A human-readable description of the error. -
errorDetails [string] false A list of additional error details. -

DataModels

Name Type Required Description Accepted Values
items [DataModel] true An array containing the current page of results. -
totalResults integer(int32) false The total number of results for the specified parameters. -
firstLink string true The first page of results. -
lastLink string false The last page of results. -
prevLink string false The previous page of results. -
nextLink string false The next page of results. -

DataModel

Name Type Required Description Accepted Values
id string false The unique ID of the data model. -
name string false The display name of the data model. -
description string false A short description of the data model. -
discoverability string false Discoverability controls who can discover a data model of which they are not already a member. The following values are possible:
  • PUBLIC: Indicates that the data model is visible to all users and anyone can join to have access.
  • PRIVATE: Indicates that the data model is visible to all users but the users cannot join unless a data model member explicitly adds them.
  • HIDDEN: Indicates that the data model is hidden from anyone who does not have access to the data model.
PRIVATE, PUBLIC, HIDDEN
dataSetAliases [DataSetAlias] false No description -
joins [Join] false The list of joins to be applied to the data set aliases of a data model. -
filters [Filter] false The list of filters to be applied to the data model or the data set aliases. -
createdAt string false The date and time when the data model was created, in ISO 8601 YYYY-MM-DDThh:mm:ss.SSSZ format. -
updatedAt string false The date and time when the data model was last updated, in ISO 8601 YYYY-MM-DDThh:mm:ss.SSSZ format. -

DataSetAlias

Name Type Required Description Accepted Values
id string false The unique ID of the data set alias. -
name string false The alias for the data set added to the data model. -
description string false A short description of the data set alias of the data model. -
dataSetMnemonic string false The name of the associated data set. -
schemaMnemonic string false The name of the schema for the associated data set. -
fieldAliases [FieldAlias] false The list of field aliases for the associated data set alias of the data model. -

Join

Name Type Required Description Accepted Values
id string false The unique ID of the join applied to the data sets of the data model. -
leftFieldAlias FieldAliasDetail false The details of the left field alias of the join defined in the data set. -
rightFieldAlias FieldAliasDetail false The details of the right field alias of the join defined in the data set. -
joinType string false The type of join defined in the data set. OUTER_FULL, OUTER_NONE, OUTER_LEFT, OUTER_RIGHT
operator string false The operator for the join defined in the data set. =, >, <, >=, <=

Filter

Name Type Required Description Accepted Values
id string false The unique ID of the filter applied to the data set of the data model. -
dataSetAliasName string false The name of the data set alias to which the filter is applied. -
fieldAliasName string false The name of the field alias of the data set to which the filter is applied. -
operator string false The type of filter operator. =, !=, IS_NULL, IS_NOT_NULL, >, <, >=, <=, BETWEEN, IN, LIKE
value string false This specifies the string to be matched with the value in the specified field when the filter operator is LIKE or =. -
global boolean false Indicates whether the filter is global in scope. If the value is true, the scope of the filter is global and present in all data set aliases associated with the data model. If the value is false, the filter is in only the specified data set alias associated with the data model. -
dataType string false The data type of the field alias. NUMERIC, FLOAT, REAL, DOUBLE, INT, INTEGER, CHAR, VARCHAR, STRING, BOOLEAN, DATETIME, TIMESTAMP, TIMESTAMPTZ, DATE, BINARY, VARBINARY, BLOB

NotFound

Name Type Required Description Accepted Values
code integer(int32) true The HTTP response status code that represents the error. -
message string true A human-readable description of the error. -
errorDetails [string] false A list of additional error details. -

putDataModels

Name Type Required Description Accepted Values
description string false A short description of the data model. -
discoverability string false Discoverability controls who can discover a data model of which they are not already a member. The following values are possible:
  • PUBLIC: Indicates that the data model is visible to all users and anyone can join to have access.
  • PRIVATE: Indicates that the data model is visible to all users but the users cannot join unless a data model member explicitly adds them.
  • HIDDEN: Indicates that the data model is hidden from anyone who does not have access to the data model.
PUBLIC, PRIVATE, HIDDEN
publishTo [string] true This indicates the BI tool to which the data model should be published.
NOTE: Data models can published to one or more BI tools at a time.
BUSINESS_OBJECTS, TABLEAU
dataSetAliases [object] false

The list of data sets to be added to a data model. This includes the list of field aliases that are associated with the data set; if any calculation functions are to be applied on any of the fields, they should also be included in the field aliases list of the data set alias.

-
» name string false The alias for the data set added to the data model. -
» description string false A short description of the data set alias of the data model. -
» dataSetMnemonic string false The name of the associated data set. -
» schemaMnemonic string false The name of the schema for the associated data set. -
» fieldAliases object false The list of field aliases for the associated data set alias of the data model. -
joins [object] false The list of joins to be applied between the data sets of the data model. -
» leftFieldAlias object false The details of the left field alias of the join defined in the data set. -
» rightFieldAlias object false The details of the right field alias of the join defined in the data set. -
» joinType string false The type of join defined in the data set. -
» operator string false The operator for the join defined in the data set. -
filters [object] false The list of filters to be included on the data sets or data models. -
» dataSetAliasName string false The name of the data set alias to which the filter is applied. -
» fieldAliasName string false The name of the field alias of the data set to which the filter is applied. -
» operator string false The type of filter operator. -
» value string false This specifies the string to be matched with the value in the specified field when the filter operator is LIKE or =. -
» global boolean false Indicates whether the filter is global in scope. If the value is true, the scope of the filter is global and present in all data set aliases associated with the data model. If the value is false, the filter is in only the specified data set alias associated with the data model. -
» dataType string false The data type of the field alias. -

Publications

Name Type Required Description Accepted Values
items [Publication] true An array containing the current page of results. -
totalResults integer(int32) false The total number of results for the specified parameters. -
firstLink string true The first page of results. -
lastLink string false The last page of results. -
prevLink string false The previous page of results. -
nextLink string false The next page of results. -

Publication

Name Type Required Description Accepted Values
id string false The unique ID of the publication. -
status string false The current status of the data model publication. PROCESSING, PUBLISHED, FAILED
errorKey [string] false Specifies whether the error occurred while publishing in BusinessObjects, Tableau, or while creating the versions. PUBLISH_TO_BO_ERROR, PUBLISH_TO_TABLEAU_ERROR, CREATE_PUBLISHED_DATA_MODEL_VERSION_ERROR
errorMessage string false Specifies if the problem was encountered while publishing the data model. -
version integer(int32) false The version of the published data model. -
publishedToBo boolean false Indicates whether the data model has been successfully published to BusinessObjects. -
publishedToTableau boolean false Indicates whether the data model has been successfully published to Tableau. -

Versions

Name Type Required Description Accepted Values
items [Version] true An array containing the current page of results. -
totalResults integer(int32) false The total number of results for the specified parameters. -
firstLink string true The first page of results. -
lastLink string false The last page of results. -
prevLink string false The previous page of results. -
nextLink string false The next page of results. -

Version

Name Type Required Description Accepted Values
versionNumber integer(int32) false The version of the published data model. -
versionLink string false The link to access the published data model version. -

DataModelVersion

Name Type Required Description Accepted Values
name string false The display name of the published data model. -
description string false A short description of the published data model. -
dataSetAliases [DataSetAlias] false No description -
joins [Join] false No description -
filters [Filter] false No description -

Authorizations

Name Type Required Description Accepted Values
items [Authorization] true An array containing the current page of results. -
totalResults integer(int32) false The total number of results for the specified parameters. -
firstLink string true The first page of results. -
lastLink string false The last page of results. -
prevLink string false The previous page of results. -
nextLink string false The next page of results. -

Authorization

Name Type Required Description Accepted Values
id string false The unique ID of the data model authorization record. -
member Member false The personnel or personnel group who should be authorized to access the data model. -
role string false A data model member’s role defines what actions they are authorized to perform for the data model. The following roles are available:
  • CONSUMER: Consumers can only view the data model.
  • COLLABORATOR: Collaborators can view and edit the data model but not delete it.
  • OWNER: Owners have all privileges for the data model, including changing the members and viewing, editing, and deleting it.
OWNER, CONSUMER, COLLABORATOR

Member

Name Type Required Description Accepted Values
id string true The ID of the personnel or personnel group who should be authorized to access the data model.
For more information about personnel and personnel groups, see Personnel API.
See the following examples:
  • PERSONNEL: member: { 'id': 'd197260b-e1b2-4e9f-ac8e-d5ed6ada2b37', 'type': 'PERSONNEL' }
  • PERSONNEL_GROUP: member: { 'id': '0246c1a7-374c-426f-9ab0-6e65c51aca2', 'type': 'PERSONNEL_GROUP' }
-
type string true An enumerated list that describes the role that the individual plays in relation to the entity. Currently, the following types are possible:
  • PERSONNEL: A personnel is an employee or affiliate of the tenant organization.
  • PERSONNEL_GROUP: A personnel group is a set of personnel for the tenant organization who are grouped together to give them access to the same features or information.
PERSONNEL, PERSONNEL_GROUP

postDataModelsDatamodelidAuthorizations

Name Type Required Description Accepted Values
authorizations [object] true The list of personnel or personnel groups to be authorized to access the data model. -
» member object true The personnel or personnel group who should be authorized to access the data model. -
» role string true A data model member’s role defines what actions they are authorized to perform for the data model. The following roles are available:
  • CONSUMER: Consumers can only view the data model.
  • COLLABORATOR: Collaborators can view and edit the data model but not delete it.
  • OWNER: Owners have all privileges for the data model, including changing the members and viewing, editing, and deleting it.
-

DataModelAuthorization

Name Type Required Description Accepted Values
authorizations [Authorization] false A list of personnel or personnel groups authorized to access the data model. -

MultiStatus

Name Type Required Description Accepted Values
authorizations [Authorization] false A list of individual members authorized to access the data model. -
errors [string] false The members or groups who failed to be provided authorized access to the data model. -

putDataModelsDatamodelidAuthorizations

Name Type Required Description Accepted Values
role string true A data model member’s role defines what actions they are authorized to perform for the data model. The following roles are available:
  • CONSUMER: Consumers can only view the data model.
  • COLLABORATOR: Collaborators can view and edit the data model but not delete it.
  • OWNER: Owners have all privileges for the data model, including changing the members and viewing, editing, and deleting it.
OWNER, CONSUMER, COLLABORATOR