NAV
Ruby Shell

Soarian ODS Public API v1

Soarian ODS Public API is designed to meet the requirements of use case related to Soarian Financial operational data store (ODS) near realtime streaming jobs for processing continuously streamed data in low latency into Oracle Health Data Intelligence platform from Soarian ODS.

URL: https://cernerdemo.api.us-1.healtheintent.com/soarian-ods/v1

NRT Jobs

Near Real Time (NRT) Jobs are the Soarian ODS stream processing jobs that are triggered to initiate low latency data consumption from downstream UDI queues and then persisted to a Health Data Intelligence Analytics warehouse.

Creates an NRT Job

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/soarian-ods/v1/nrt-jobs', headers: headers)

print JSON.pretty_generate(result)




# You can also use wget
curl -X POST https://cernerdemo.api.us-1.healtheintent.com/soarian-ods/v1/nrt-jobs \
-H 'Authorization: {auth_header}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json'

Example response

{
  "id": "c5d5f79c-72b3-43c6-91ec-b8692700311c",
  "name": "sfhiscrum_dae0c7be-ba27-4662-a5f7-eeb9952c8a3f_8e759a16-d37d-4930-bc7c-b22fad228def",
  "status": "running",
  "dataSource": {
    "id": "8e759a16-d37d-4930-bc7c-b22fad228def"
  },
  "warehouseSchema": "warehouse_schema",
  "failureMessage": "null",
  "createdAt": "2020-05-03T11:32:57.041Z",
  "updatedAt": "2020-05-06T10:01:21.025Z"
}

POST /nrt-jobs

Creates an NRT job to trigger Soarian ODS stream processing pipeline for a tenant data source.

Parameters

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

Response Statuses

Status Meaning Description Schema
202 Accepted Accepted SoarianOdsPublicApi_V1_NrtJob
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized Error
403 Forbidden Forbidden Error
500 Internal Server Error Internal Server Error Error

Retrieve a List of NRT Jobs

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/soarian-ods/v1/nrt-jobs', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/soarian-ods/v1/nrt-jobs \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "items": [
    {
      "id": "c5d5f79c-72b3-43c6-91ec-b8692700311c",
      "name": "sfhiscrum_dae0c7be-ba27-4662-a5f7-eeb9952c8a3f_8e759a16-d37d-4930-bc7c-b22fad228def",
      "status": "running",
      "dataSource": {
        "id": "8e759a16-d37d-4930-bc7c-b22fad228def"
      },
      "warehouseSchema": "warehouse_schema",
      "failureMessage": "null",
      "createdAt": "2020-05-03T11:32:57.041Z",
      "updatedAt": "2020-05-06T10:01:21.025Z"
    }
  ],
  "totalResults": 1,
  "firstLink": "https://cernerdemo.api.us-1.healtheintent.com/example/v1/examples?offset=0&limit=20",
  "lastLink": "https://cernerdemo.api.us-1.healtheintent.com/example/v1/examples?offset=0&limit=20"
}

GET /nrt-jobs

Retrieves all NRT jobs running for a tenant in Soarian ODS.

Parameters

Parameter In Type Required Default Description Accepted Values
dataSourceId query string false N/A Filters the jobs with a specified datasource ID. -
status query string false N/A Filters the jobs with a specified job status. -
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 NrtJobs
401 Unauthorized Unauthorized Error
403 Forbidden Forbidden Error
500 Internal Server Error Internal Server Error Error

Deletes a particular NRT Job

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/soarian-ods/v1/nrt-jobs/{nrtJobId}', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X DELETE https://cernerdemo.api.us-1.healtheintent.com/soarian-ods/v1/nrt-jobs/{nrtJobId} \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

DELETE /nrt-jobs/{nrtJobId}

Deletes the specified NRT job running for the Soarian ODS tenant.

Parameters

Parameter In Type Required Default Description Accepted Values
nrtJobId path string true N/A The ID of the NRT job. -

Response Statuses

Status Meaning Description Schema
202 Accepted Accepted SoarianOdsPublicApi_V1_NrtJob
401 Unauthorized Unauthorized Error
403 Forbidden Forbidden Error
404 Not Found Not Found Error
500 Internal Server Error Internal Server Error Error

Retrieve a Single Nrt Job

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/soarian-ods/v1/nrt-jobs/{nrtJobId}', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/soarian-ods/v1/nrt-jobs/{nrtJobId} \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "id": "c5d5f79c-72b3-43c6-91ec-b8692700311c",
  "name": "sfhiscrum_dae0c7be-ba27-4662-a5f7-eeb9952c8a3f_8e759a16-d37d-4930-bc7c-b22fad228def",
  "status": "running",
  "dataSource": {
    "id": "8e759a16-d37d-4930-bc7c-b22fad228def"
  },
  "warehouseSchema": "warehouse_schema",
  "failureMessage": "null",
  "createdAt": "2020-05-03T11:32:57.041Z",
  "updatedAt": "2020-05-06T10:01:21.025Z"
}

GET /nrt-jobs/{nrtJobId}

Retrieves the specified NRT job running for the Soarian ODS tenant.

Parameters

Parameter In Type Required Default Description Accepted Values
nrtJobId path string true N/A The ID of the NRT job. -

Response Statuses

Status Meaning Description Schema
200 OK OK SoarianOdsPublicApi_V1_NrtJob
401 Unauthorized Unauthorized Error
403 Forbidden Forbidden Error
404 Not Found Not Found Error
500 Internal Server Error Internal Server Error Error

Schema Definitions

postNrtJobs

Name Type Required Description Accepted Values
dataSourceId string true The ID to define a particular data source. -
tenantRecordTypeSetId string true The ID to define a particular record type set for a tenant. -
warehouseSchema string false The model warehouse schema to load data. -

SoarianOdsPublicApi_V1_NrtJob

Name Type Required Description Accepted Values
id string true The ID of the created NRT job in service. -
name string true The name of the created NRT job in service. -
status string true The indicator for status of the job. -
dataSource object true The data source for which the job is executed. -
warehouseSchema string true The schema used to populate the models in sink. -
failureMessage string false Displays a generic message and is displayed only when the status is either failed or termination_failed (deprecated) -
createdAt string true The date and time when the NRT job was created, in ISO YYYY-MM-DDThh:mm:ss.SSSZ format. -
updatedAt string true The date and time when the NRT job was updated, in ISO YYYY-MM-DDThh:mm:ss.SSSZ format. -

Error

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 [ErrorDetail] false A list of additional error details. -

ErrorDetail

Name Type Required Description Accepted Values
domain string false A subsystem or context where an error occurred. -
reason string false A codified value that represents the specific error that caused the current error status. -
message string false A human-readable description of an error. -
locationType string false The location or type of the field that caused an error. query, header, path, formData, body
location string false The name of the field that caused an error. -

NrtJobs

Name Type Required Description Accepted Values
items [SoarianOdsPublicApi_V1_NrtJob] 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. -