LifeOmic API (1.0.0)

Download OpenAPI specification:Download

LifeOmic API

The LifeOmic Platform is an API-first design. You can use the LifeOmic API to programmatically control all of the features of the platform. This public API powers all of the LifeOmic client applications, including the LifeOmic mobile app and the LifeOmic Platform web application.

You can build your own third-party applications around the LifeOmic health-focused APIs in the same manner that you can build a communication app around Twilio APIs. LifeOmic has helped several customers use the LifeOmic API as a Platform as a Service (PaaS). Contact LifeOmic to set up credentials for your app.

API Key

The simplest way for a developer to make API calls is to use an API key. See the Getting Started Guide for instructions on how to create an API key. After creating an API key, it can be provided via the Authorization HTTP header in the same fashion as the access tokens.

LifeOmic API Details

Authentication

Supports OAuth 2.0 operations that do not require authentication

SAML metadata

Fetches the Service Provider SAML metadata for the LifeOmic platform. This operation does not require authentication.

Responses

Request samples

curl -X GET https://api.us.lifeomic.com/v1/saml/metadata

authorize user sign-in

Displays a sign-in view for users. On successful sign-in, the authentication server redirects back to the value specified in the redirect_uri parameter and includes either the requested authorization code or access tokens. This operation does not require authentication.

query Parameters
response_type
required
string
Enum: "code" "token"

The response type. Must be code or token. Indicates whether the client wants an authorization code (authorization code grant flow) for the end user or directly issues tokens for end user (implicit flow).

client_id
required
string

The Client ID. Must be a pre-registered client for the LifeOmic Platform.

redirect_uri
required
string

The URL to which the authentication server redirects the browser after authorization has been granted by the user. Must have been pre-registered with a client.

state
string

An opaque value the clients add to the initial request. The authorization server includes this value when redirecting back to the client.

scope
string

Scopes must be separated by spaces. If the client doesn't request any scopes, the authentication server uses all scopes associated with the client. An ID token is only returned if openid scope is requested. The phone, email, and profile scopes can only be requested if openid scope is also requested. These scopes dictate the claims that go inside the ID token.

code_challenge_method
string
Value: "S256"

The method used to generate the challenge for PKCE. Currently only S256 is supported.

code_challenge
string

The code challenge for PKCE derived from the code verifier.

Responses

Request samples

curl -X GET https://api.us.lifeomic.com/v1/oauth/authorize?response_type=code&client_id=string&redirect_uri=string

authorize access token

For the authorization code flow, this allows a client to exchange an authorization code for an access token. This operation does not require authentication.

header Parameters
Authorization
required
string

If the client was issued a secret, the client must pass its client_id and client_secret in the authorization header through Basic HTTP authorization. The secret is Basic Base64Encode(client_id:client_secret).

Request Body schema: application/x-www-form-urlencoded
grant_type
required
string
Enum: "authorization_code" "refresh_token"

The grant type.

client_id
required
string

The client ID. Must be a preregistered client.

code
string

The authorization code. Required if grant_type is authorization_code.

redirect_uri
string

Must be the same redirect_uri that was used to get authorization_code in /oauth/authorize. Required only if grant_type is authorization_code.

refresh_token
string

The refresh token. Required if grant_type is refresh_token.

code_verifier
string

The proof key. Required if grant_type is authorization_code and the authorization code was requested with PKCE.

Responses

Request samples

# You can also use wget
curl -X POST https://api.us.lifeomic.com/v1/oauth/token \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'Accept: application/json' \
  -H 'Authorization: string'

Response samples

Content type
{
  • "access_token": "string",
  • "refresh_token": "string",
  • "id_token": "string",
  • "token_type": "string",
  • "expires_in": 0
}

Cohorts

Supports operations for a subset of patients from a LifeOmic Platform project.

To learn about the service as implemented in the LifeOmic Platform web app, see the Cohorts Overview.

Get cohorts.

Returns a list of cohorts that the user has access to.

Authorizations:
Oauth2api-key
query Parameters
projectId
required
string

The ID of the project to search within for cohorts.

name
string

Only return cohorts that have a name that starts with the given value.

pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Create a cohort

Create a cohort, representing a subset of a project based on one or more queries

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
name
required
string
description
string
ownerProject
required
string
required
Array of objects (CohortQuery)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "ownerProject": "string",
  • "queries": [
    ]
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "ownerProject": "string",
  • "resultCount": 0,
  • "creatorUser": "string",
  • "creationTime": "string",
  • "queries": [
    ]
}

Get a cohort.

Returns a cohort.

Authorizations:
Oauth2api-key
path Parameters
cohortId
required
string

The cohort id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "ownerProject": "string",
  • "resultCount": 0,
  • "creatorUser": "string",
  • "creationTime": "string",
  • "queries": [
    ]
}

Update a cohort.

Returns the updated cohort.

Authorizations:
Oauth2api-key
path Parameters
cohortId
required
string

The cohort id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
name
required
string
description
string
ownerProject
required
string
required
Array of objects (CohortQuery)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "ownerProject": "string",
  • "queries": [
    ]
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "ownerProject": "string",
  • "resultCount": 0,
  • "creatorUser": "string",
  • "creationTime": "string",
  • "queries": [
    ]
}

Content Entity

Supports Content Entity operations on the LifeOmic Platform

Content Entity operations take place on https://apps.us.lifeomic.com/api/v2/content.

Get content entity

Returns the entity object.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "entityId": "string",
  • "project": "9ec8a81a-31b2-4a83-bcd8-cef9150932d2",
  • "account": "string",
  • "scope": "account",
  • "displayName": "string",
  • "contentType": "audio",
  • "lastModified": "2019-08-24T14:15:22Z",
  • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
  • "fetchRoute": "http://example.com"
}

Create content entity.

Creates an entity, returning the entity object.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "entityId": "string",
  • "project": "9ec8a81a-31b2-4a83-bcd8-cef9150932d2",
  • "account": "string",
  • "scope": "account",
  • "displayName": "string",
  • "contentType": "audio",
  • "lastModified": "2019-08-24T14:15:22Z",
  • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
  • "fetchRoute": "http://example.com"
}

Update content entity.

Updates an entity, returning the entity object.

Authorizations:
Oauth2api-key
path Parameters
entityId
required
string

The entityId.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "entityId": "string",
  • "project": "9ec8a81a-31b2-4a83-bcd8-cef9150932d2",
  • "account": "string",
  • "scope": "account",
  • "displayName": "string",
  • "contentType": "audio",
  • "lastModified": "2019-08-24T14:15:22Z",
  • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
  • "fetchRoute": "http://example.com"
}

Delete content entity.

Delete an entity.

Authorizations:
Oauth2api-key
path Parameters
entityId
required
string

The entityId.

query Parameters
hard
boolean
Default: false

Force hard delete

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Share content entity.

Share content entity by entityId.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "username_entityId": "string",
  • "entityId": "string",
  • "type": "owner"
}

Unshare content entity.

Unshare content entity by entityId.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
null

Get acl by type and entity id.

Get an acl.

Authorizations:
Oauth2api-key
path Parameters
type
required
string
Enum: "owner" "shared" "view"

The acl type

entityId
required
string

The entityId.

query Parameters
pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "username_entityId": "string",
  • "entityId": "string",
  • "type": "owner"
}

Get content entity by owner scoped to a project

Returns the entity object.

Authorizations:
Oauth2api-key
path Parameters
project
required
string

The LifeOmic project.

query Parameters
pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Get content entity by user

Returns the entity objects.

Authorizations:
Oauth2api-key
path Parameters
project
required
string

The LifeOmic project.

query Parameters
pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Create content entity assignment.

Creates an entity assignment, returning the entity assignment object.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "ownerId": "string",
  • "entityId": "string",
  • "assigneeLrn": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Get content entity assignment

Returns the entity assignment object.

Authorizations:
Oauth2api-key
path Parameters
assignmentId
required
string

Content entity assignment identifier

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "ownerId": "string",
  • "entityId": "string",
  • "assigneeLrn": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Update content entity assignment.

Updates an entity assignment, returning the entity assignment object.

Authorizations:
Oauth2api-key
path Parameters
assignmentId
required
string

Content entity assignment identifier

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "ownerId": "string",
  • "entityId": "string",
  • "assigneeLrn": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Delete content entity assignment.

Delete an entity assignment.

Authorizations:
Oauth2api-key
path Parameters
assignmentId
required
string

The entity assignment identifier.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "lastModified": "2019-08-24T14:15:22Z"
}

Get content entity assignments by owner scoped to a project

Returns the entity assignment object.

Authorizations:
Oauth2api-key
path Parameters
project
required
string

The LifeOmic project.

query Parameters
pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Get content entity assignments by user

Returns the entity assignment object.

Authorizations:
Oauth2api-key
path Parameters
project
required
string

The LifeOmic project.

query Parameters
pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Initiate content conversion for video content

Starts the process of converting video file to stream format.

Authorizations:
Oauth2api-key
path Parameters
entityId
required
string

The entityId.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{ }

Retrieve the video content fetch route

After video conversion has completed then the fetch route is available

Authorizations:
Oauth2api-key
path Parameters
project
required
string <uuid>

The LifeOmic project id.

serviceId
required
string <uuid>

The service id returned from CreateEntity.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Lifeomic-User
required
string

The LifeOmic user.

Responses

Response samples

Content type
application/json
{
  • "getVideo": {}
}

Content

Supports operations for storing and retrieving course-related and program-related content. For more information, see the Content Service Guide.

List all content items

Lists the content items for your LifeOmic project.

Authorizations:
Oauth2api-key
path Parameters
projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

query Parameters
name
string

Filters the result set by performing a case-insensitive begins with filter on the file name.

orderBy
string
Enum: "name" "size"

Allows one to order the results by file name or by size. Default is to sort by name in ascending order. To sort in descending order, add desc to the end of the value.

pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location 'https://api.us.lifeomic.com/v1/content/<projectId>/content' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>'

Response samples

Content type
application/json
{
  • "items": {
    }
}

Create a content item

Create a content item. If an id is not supplied by the user, a unique id is assigned with the response. This id is the contentId you need for future operations.

Authorizations:
Oauth2api-key
query Parameters
projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
string (id)

Content ID

project
required
string (project)

Project with which content is associated

displayName
required
string (displayName)

Human readable name for content

type
required
string (type)

Type of content

language
string (language)

Primary language for the content

object (fields)

Content fields

tags
Array of strings (tags)

Descriptive tags for the content

slug
required
string (slug) ^[a-zA-Z0-9-\/]+$

Slug to identify content

object (meta)

Additional data describing the content

public
boolean (public)

Should the content be made public

keyPath
string (keyPath) ^(?!\/)[a-z0-9-/]+$

Key path to designate path of nested content

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "project": "string",
  • "displayName": "string",
  • "type": "string",
  • "language": "string",
  • "fields": {
    },
  • "tags": [
    ],
  • "slug": "string",
  • "meta": { },
  • "public": true,
  • "keyPath": "string"
}

Response samples

Content type
application/json
{
  • "id": "8256efc4-116f-4063-bd6b-6d63b4ad8b56",
  • "project": "<projectId>",
  • "displayName": "Test Course",
  • "type": "course",
  • "slug": "1defb12c-daae-42f2-b13c-b9d010ef8c00",
  • "status": "draft",
  • "isDirty": true,
  • "lastModified": "2023-06-20T14:57:52.066Z",
  • "account": "<account-name>",
  • "fileAttachments": [ ],
  • "contentAttachments": [ ]
}

List a specific content item

Lists a specific content item.

Authorizations:
Oauth2api-key
path Parameters
contentId
required
string

Specifies the content item. Found in the list all content response as the id value.

projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location https://api.us.lifeomic.com/v1/content/<projectId>/content/<contentId>' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>'            

Response samples

Content type
application/json
{
  • "id": "<contentId>",
  • "project": "<projectId>",
  • "displayName": "Test Course",
  • "type": "course",
  • "fields": {
    },
  • "slug": "1defb12c-daae-42f2-b13c-b9d010ef8c99",
  • "status": "published",
  • "isDirty": false,
  • "version": 1687963272285,
  • "parentVersion": "1defb12c-daae-42f2-b13c-b9d010ef8c99:1687448761669",
  • "lastModified": "2023-06-28T14:41:12.285Z",
  • "publishDate": "2023-06-28T14:41:12.285Z",
  • "account": "<accountName>",
  • "fileAttachments": [
    ],
  • "contentAttachments": [ ]
}

Delete a content item

Deletes the content item specified with the content id.

Authorizations:
Oauth2api-key
path Parameters
contentId
required
string

The content item id.

query Parameters
projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location --request DELETE 'https://api.us.lifeomic.com/v1/content/{projectId}/content/{contentId}' \
--header 'LifeOmic-Account: {account-id}' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {api-key}'   

Response samples

Content type
application/json
null

Demote content to draft

You demote content from publish state to draft state with this POST call.

Authorizations:
Oauth2api-key
path Parameters
contentId
required
string

Specifies the content item. Found in the list all content response as the id value.

projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location --request POST 'https://api.us.lifeomic.com/v1/content/<projectId>/content/<contentId>/draft' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>'            

Response samples

Content type
application/json
{
  • "id": "contentId",
  • "project": "projectId",
  • "displayName": "Test Course",
  • "type": "course",
  • "fields": {
    },
  • "slug": "1defb12c-daae-42f2-b13c-b9d010ef8c99",
  • "status": "draft",
  • "isDirty": false,
  • "version": 1687448761669,
  • "lastModified": "2023-06-20T14:29:54.662Z",
  • "publishDate": "2023-06-22T15:46:01.669Z",
  • "account": "account-name"
}

Promote content to publish

You promote content from draft state to publish state with the POST call. Content is created with a default status of draft.

Authorizations:
Oauth2api-key
path Parameters
contentId
required
string

Specifies the content item. Found in the list all content response as the id value.

projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location --request POST 'https://api.us.lifeomic.com/v1/content/<projectId>/content/<contentId>/publish' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>'            

Response samples

Content type
application/json
{
  • "id": "contentId",
  • "project": "projectId",
  • "displayName": "Test Course",
  • "type": "course",
  • "fields": {
    },
  • "slug": "1defb12c-daae-42f2-b13c-b9d010ef8c99",
  • "status": "published",
  • "isDirty": false,
  • "version": 1687448761669,
  • "lastModified": "2023-06-20T14:29:54.662Z",
  • "publishDate": "2023-06-22T15:46:01.669Z",
  • "account": "account-name"
}

Attach a file to a course

Attaches a file to a course.

Authorizations:
Oauth2api-key
path Parameters
projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

contentId
required
string

Specifies the content item. Found in the list all content response as the id value.

fileId
required
string

Specifies content file. Found in the list content files response as the id value.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location --request PUT 'https://api.us.lifeomic.com/v1/content/{projectId}/content/{contentId}/file-attachment/{fileId}' \
--header 'LifeOmic-Account: {account-id}' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {api-key}'   

Response samples

Content type
application/json
null

List content files

Lists the content files for your LifeOmic project.

Authorizations:
Oauth2api-key
path Parameters
projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location 'https://api.us.lifeomic.com/v1/content/<projectId>/file' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>' \
--header 'Content-Type: application/json' \
--data '{"project":"<project-id>","name":"<filename>.<fileformat>"}'  

Response samples

Content type
application/json
{
  • "items": {
    }
}

Create a content file

Creates a new file placeholder in the content service. The POST call requires body data in the JSON format. This POST call is the first call in a two call operation for uploading content files. For more information, see Upload a File.

Authorizations:
Oauth2api-key
path Parameters
projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
string

The file id. If provided on POST, then the id must be a V4 UUID, otherwise the server will create a new UUID for the file.

name
string

The file name.

datasetId
string

The project the file belongs to.

contentType
string

The content type of the file.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "datasetId": "string",
  • "contentType": "string"
}

Response samples

Content type
application/json
{
  • "id": "7c74a8e1-f118-4819-a2f7-04109a892c51,",
  • "name": "test.json,",
  • "datasetId": "ebe1618f-e474-4947-a6d2-18b19fac663a,",
  • "contentType": "application/json,",
  • "userId": "company:joe.smith.com,",
}

Delete a content file

Deletes the content file specified with the file id.

Authorizations:
Oauth2api-key
path Parameters
fileId
required
string

The content file id

projectId
required
string

Only return files in the specified dataset (projectId). See Find Your Project ID.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location --request DELETE 'https://api.us.lifeomic.com/v1/content/{projectId}/file/{fileId}' \
--header 'LifeOmic-Account: {account-id}' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {api-key}'   

Response samples

Content type
application/json
null

Accounts

Supports operations with LifeOmic Platform accounts

Retrieves a list of user accounts.

Returns a list of accounts that the user has access to.

Authorizations:
Oauth2api-key

Responses

Response samples

Content type
application/json
{
  • "accounts": [
    ]
}

Creates an account.

Creates an account, returning the account object.

Authorizations:
Oauth2api-key
Request Body schema: application/json
id
string

The account id.

name
string

The account name.

owner
string <email>

The account's owner.

type
string
Enum: "FREE" "PAID" "ENTERPRISE"

The account type.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "owner": "user@example.com",
  • "type": "FREE"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "owner": "user@example.com",
  • "type": "FREE"
}

Retrieves an account.

Retrieves details about an account. Returns the account object.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

query Parameters
include
string
Value: "groups"

Include additional information like the user's groups.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "owner": "user@example.com",
  • "type": "FREE"
}

Updates an account.

Update an account by changing the name or clearing out a pending deletion date. Returns the account object.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

Request Body schema: application/json
name
string

The account name.

deletionDate
string

The account's deletion date. Set to null on a PATCH request to cancel a pending deletion.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "deletionDate": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "owner": "user@example.com",
  • "type": "FREE"
}

Deletes an account.

Deletes an account. By default, the account will not be deleted for 14 days. During this time, the pending deletion can be cancelled by using the PATCH method. After the 14 day grace period, the account and all of its data will be removed.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

query Parameters
force
boolean

If true, the 14 day grace period will be ignored and all of the account data will be removed immediately.

Responses

Account Clients

Supports operations for clients belonging to an account

Retrieves a list of accounts.

Returns a list of clients belonging to an account.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "clients": [
    ]
}

Creates a client.

Create a new client for an account. Returns the client object.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
string

The client id.

name
string <= 64 characters

The client name.

generateSecret
boolean

If true, a secret will be created for the client.

callbackUrls
Array of strings [ 1 .. 100 ] items

The list of callback URLs allowed for this client.

logoutUrls
Array of strings [ 1 .. 100 ] items

The list of logout allowed for this client.

identityProviders
Array of strings non-empty
Items Enum: "GOOGLE" "LIFEOMIC" "FACEBOOK" "CUSTOM"

The list of identity providers allowed for this client.

allowedOAuthFlows
Array of strings non-empty
Items Enum: "code" "implicit" "client_credentials"

The list of OAuth flows allowed for this client.

object

The custom identity provider to use for this client.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "generateSecret": true,
  • "callbackUrls": [
    ],
  • "logoutUrls": [
    ],
  • "identityProviders": [
    ],
  • "allowedOAuthFlows": [
    ],
  • "customIdentityProvider": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "generateSecret": true,
  • "callbackUrls": [
    ],
  • "logoutUrls": [
    ],
  • "identityProviders": [
    ],
  • "allowedOAuthFlows": [
    ],
  • "customIdentityProvider": {
    }
}

Retrieves a client.

Retrieves an account by clientId.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

clientId
required
string

The client id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "generateSecret": true,
  • "callbackUrls": [
    ],
  • "logoutUrls": [
    ],
  • "identityProviders": [
    ],
  • "allowedOAuthFlows": [
    ],
  • "customIdentityProvider": {
    }
}

Updates a client.

Updates a client for an account.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

clientId
required
string

The client id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
string

The client id.

name
string <= 64 characters

The client name.

generateSecret
boolean

If true, a secret will be created for the client.

callbackUrls
Array of strings [ 1 .. 100 ] items

The list of callback URLs allowed for this client.

logoutUrls
Array of strings [ 1 .. 100 ] items

The list of logout allowed for this client.

identityProviders
Array of strings non-empty
Items Enum: "GOOGLE" "LIFEOMIC" "FACEBOOK" "CUSTOM"

The list of identity providers allowed for this client.

allowedOAuthFlows
Array of strings non-empty
Items Enum: "code" "implicit" "client_credentials"

The list of OAuth flows allowed for this client.

object

The custom identity provider to use for this client.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "generateSecret": true,
  • "callbackUrls": [
    ],
  • "logoutUrls": [
    ],
  • "identityProviders": [
    ],
  • "allowedOAuthFlows": [
    ],
  • "customIdentityProvider": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "generateSecret": true,
  • "callbackUrls": [
    ],
  • "logoutUrls": [
    ],
  • "identityProviders": [
    ],
  • "allowedOAuthFlows": [
    ],
  • "customIdentityProvider": {
    }
}

Delete an account client.

Deletes an account client.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The account id.

clientId
required
string

The client id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

APIKey

Supports operations for API keys

To learn about API key implementation on the LifeOmic Platform web app, see API Keys.

Retrieves a list of API Keys.

Returns a list of all API Keys for the logged in user.

Authorizations:
Oauth2api-key
query Parameters
pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Creates an API Key

Create an API Key can that be used in API calls,

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
name
string

the API Key name

expireInDays
number

how long before the API key expires

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "expireInDays": 0
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "id": "string",
  • "key": "string",
  • "dateCreated": "string",
  • "dateExpires": "string"
}

Revoke an API Key.

Revokes an API Key immediately.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The API Key id.

Responses

Response samples

Content type
application/json
null

Files

Supports operations for storing and retrieving file data. For a guide to using the file service, see Getting Started with the File Service API.

Retrieves a list of files

Lists the files for your LifeOmic account. Refine your results to a specific project with the datasetId query parameter. For more information, see List Files.

Authorizations:
Oauth2api-key
query Parameters
name
string

Filters the result set by performing a case-insensitive begins with filter on the file name.

orderBy
string
Enum: "name" "size"

Allows one to order the results by file name or by size. Default is to sort by name in ascending order. To sort in descending order, add desc to the end of the value.

pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

datasetId
string

Only return files in the specified dataset (project id).

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location 'https://api.us.lifeomic.com/v1/files?datasetId=<project-id>' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>'

Response samples

Content type
application/json
{
  • "items": {
    },
  • "links": {
    }
}

Creates a file

Creates and uploads a file. Uploading files is a two call operation. The first call is a POST call for a response that contains the presigned URL. The POST call contains JSON data for the file in the body. The second call is a PUT call to upload the file to the presigned URL. For more information, see Upload Files.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
string

The file id. If provided on POST, then the id must be a V4 UUID, otherwise the server will create a new UUID for the file.

name
string

The file name.

datasetId
string

The project the file belongs to.

contentType
string

The content type of the file.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "datasetId": "string",
  • "contentType": "string"
}

Response samples

Content type
application/json
{
  • "id": "7c74a8e1-f118-4819-a2f7-04109a892c51,",
  • "name": "test.json,",
  • "datasetId": "ebe1618f-e474-4947-a6d2-18b19fac663a,",
  • "contentType": "application/json,",
  • "userId": "company:joe.smith.com,",
}

Downloads a file

Downloads a file. Add the file id from the general GET files response and the include parameter with the downloadUrl value. The response contains the download url. For more information, see Download Files.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The file id.

query Parameters
include
string
Value: "downloadUrl"

Specifying a value of downloadUrl will return the download URL for the file.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location 'https://api.us.lifeomic.com/v1/files/<file-id>?include=downloadUrl' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>'            

Response samples

Content type
application/json
{
  • "id": "bfdf7716-1088-4021-80b5-ab4badacd081,",
  • "name": "initial_lab_report copy.pdf,",
  • "datasetId": "ebe1618f-e474-4947-a6d2-18b19fac663a,",
  • "size": "138829,",
  • "contentType": "application/pdf,",
  • "lastModified": "2020-11-17T14:35:14.823Z,",
  • "userId": "company:joe.smith@company.com,",
  • "lrn": "lrn:xyz:xyz:company:file:bfdf7716-1088-4021-80b5-ab4badacd081,",
  • "downloadUrl": "https://<presigned-url>"
}

Deletes a file

Deletes the file specified with the file id.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The file id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Request samples

curl --location --request DELETE 'https://api.us.lifeomic.com/v1/files/<file-id>' \
--header 'LifeOmic-Account: <account-id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <api-key>'   

Response samples

Content type
application/json
null

Groups

Supports operations with groups. To learn about the implementation of groups within the LifeOmic Platform web app, see Groups.

Retrieve a list of groups.

Returns the list of groups for an account.

Authorizations:
Oauth2api-key
query Parameters
name
string

Search for groups whose name starts with the given string.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Retrieve a group by ID.

Returns the group with the given ID.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The group ID to lookup.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "account": "string",
  • "description": "string",
  • "id": "string",
  • "type": "closed"
}

Updates a group.

Updates the group identified by the given ID.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The group ID to modify.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json

The new information for the group.

account
string

The account that owns the group.

description
string

A human readable description of the group.

id
string

The canonical identifier for the group.

type
string
Enum: "closed" "open"

Responses

Request samples

Content type
application/json
{
  • "account": "string",
  • "description": "string",
  • "id": "string",
  • "type": "closed"
}

Response samples

Content type
application/json
{
  • "account": "string",
  • "description": "string",
  • "id": "string",
  • "type": "closed"
}

Retrieve a list of group members

Returns the list of users belonging to the group.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The ID of the group

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Removes a member from a group

Removes the user from a group.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The ID of the group

username
required
string

The user to add to the group

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
null

Invitations

Supports operations to invite users to groups

Retrieves the invitations to or from the session user.

Returns a list of invitations received or sent by the user, depending on parameters.

Authorizations:
Oauth2api-key
query Parameters
user
string

The session user, whose received invitations should be fetched.

account
string

The account in which group invitations sent by the session user should be fetched.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Invites a user to join a group

Sends an email to a user, inviting them to join a group

Authorizations:
Oauth2api-key
Request Body schema: application/json
group
string

The group to which the user should be invited.

email
string

The invitee's email address.

Responses

Request samples

Content type
application/json
{
  • "group": "string",
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "account": "string",
  • "accountName": "string",
  • "group": "string",
  • "groupName": "string",
  • "invitorUser": "string",
  • "email": "string",
  • "status": "AWAITING-USER-ACTION",
  • "inviteTimestamp": "string",
  • "expirationTimestamp": "string"
}

Join, reject, or revoke an invitation.

Performs an action on the invitation. If revoking an invitation, the accessAdmin Access Policy Privilege is required

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The invitation ID to modify.

Request Body schema: application/json
status
string
Enum: "ACCEPTED" "REJECTED" "REVOKED"

The new status of the invitation.

Responses

Request samples

Content type
application/json
{
  • "status": "ACCEPTED"
}

Response samples

Content type
application/json
null

Policy

Supports ABAC access control policy operations. For more information about the LifeOmic Platform Access Control, see the Access Control Overview.

Retrieve the current user's ABAC policies

Retrieves the ABAC policies of the user. See our open-sourced implementation of parsing ABAC policies at https://github.com/lifeomic/abac

Authorizations:
Oauth2api-key

Responses

Response samples

Content type
application/json
{
  • "rules": {
    }
}

Retrieves a list of policies.

Retrieves a list of policies for an account.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
null

Creates a policy.

Create a new policy for an account.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account.

Responses

Response samples

Content type
application/json
null

Updates a policy.

Updates a policy for an account.

Authorizations:
Oauth2api-key
path Parameters
policyId
required
string

The policy id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account.

Request Body schema: application/json
name
string

Policy name

object (Policy)

An ABAC policy document.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "policy": {
    }
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "policy": {
    }
}

Deletes a policy.

Deletes a policy for an account.

Authorizations:
Oauth2api-key
path Parameters
policyId
required
string

The policy id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account.

Responses

Response samples

Content type
application/json
null

Projects

Supports operations with the containers used to store datasets in a LifeOmic Platform account

Retrieves a list of projects.

Returns a list of all projects.

Authorizations:
Oauth2api-key
query Parameters
name
string

Filters the result set by performing a case-insensitive begins with filter on the project name.

pageSize
number

The number of results to return in the request.

nextPageToken
string

The page token used to request a specific page.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Creates a project

Creates a project. Some resources refer to projects as datasets. The id of a project should be used whenever a datasetId is needed.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
string

The project id. Some resources use the term dataset to refer to a project. The project id should be used for fields such as datasetId.

name
string

The project name.

deletionDate
string

The project's deletion date. Set to null on a PATCH request to cancel a pending deletion.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "deletionDate": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "deletionDate": "string"
}

Retrieves a project.

Retrieves the details of a project. Returns an project object.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The project id.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "deletionDate": "string"
}

Updates a project.

Updates a project by changing the name or clearing out a pending deletion date.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The project id.

Request Body schema: application/json
id
string

The project id. Some resources use the term dataset to refer to a project. The project id should be used for fields such as datasetId.

name
string

The project name.

deletionDate
string

The project's deletion date. Set to null on a PATCH request to cancel a pending deletion.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "deletionDate": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "deletionDate": "string"
}

Deletes a project.

Deletes a project. By default, the project will not be deleted for 14 days. During this time, the pending deletion can be cancelled by using the PATCH method. After the 14 day grace period, the project and all of its data will be removed.

Authorizations:
Oauth2api-key
path Parameters
id
required
string

The project id.

query Parameters
force
boolean

If true, the 14 day grace period will be ignored and all of the project data will be removed immediately.

Responses

Response samples

Content type
application/json
null

Users

Supports operations for users registered with the LifeOmic Platform

Retrieves the authenticated user

Returns the full profile for the currently authenticated user

Authorizations:
Oauth2api-key

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "type": "string",
  • "profile": {
    }
}

Updates the current user's profile

Updates the authenticated user's profile

Authorizations:
Oauth2api-key
Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{
  • "profile": {
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "type": "string",
  • "profile": {
    }
}

Retrieves a user's profile

Returns a users profile. When requesting one's own profile the full profile is returned. Otherwise a limited profile is returned.

Authorizations:
Oauth2api-key
path Parameters
username
required
string

The user to lookup

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "type": "string",
  • "profile": {
    }
}

Retrieves a list of groups that the user is a member of

Returns a list of groups that the user is a member of. This currently only succeeds if a user is asking for their own groups.

Authorizations:
Oauth2api-key
path Parameters
username
required
string

The user to list groups for

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Retrieves metadata for the user's profile picture

Returns profile picture metadata.

Authorizations:
Oauth2api-key
path Parameters
username
required
string

The user to retrieve profile picture information for

Responses

Response samples

Content type
application/json
{
  • "downloadUrl": "string"
}

Updates a user's profile picture

Update a user's profile picture. This only for the currently authorized user using a LifeOmic account.

Authorizations:
Oauth2api-key
path Parameters
username
required
string

The user to update the profile picture for

header Parameters
Content-Type
required
string

The MIME type of the image being uploaded

Content-Length
required
number

The size of the image payload in bytes

Request Body schema: application/json

The binary profile picture content

string <binary>

Responses

Request samples

Content type
application/json
"string"

Response samples

Content type
application/json
{
  • "downloadUrl": "string"
}

DSL Analytics

Supports operations with a domain specific language that query the analytics database. For more information, see the Insights API.

Query the analytics databases

Returns the results a query that may span patients, genetic variants, and gene expression data.

Authorizations:
Oauth2api-key
Request Body schema: application/json
Any of
dataset_id
required
string
cohort_id
string
string_query
string
required
object or object (AnalyticsDSL-Query)
evaluate_contract
boolean

Responses

Request samples

Content type
application/json
{
  • "dataset_id": "string",
  • "cohort_id": "string",
  • "string_query": "string",
  • "query": {
    },
  • "evaluate_contract": true
}

Response samples

Content type
application/json
{
  • "data": { }
}

EHRs

Supports operations, such as syncing and ingestion, with Electronic Health Records and the LifeOmic Platform

Get ehrs.

Returns a list of EHRs that the user has access to.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Create an EHR configuration

Create an EHR configuration, which can then be connected to projects and used to sync data from your EHR to the LifeOmic Platform.

Authorizations:
Oauth2api-key
header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
string
name
required
string
ehrType
required
string
Value: "cerbo"
apiBaseUrl
required
string <uri> ^https:\/\/[a-z]+\.md-hq\.com$
apiKey
required
string
apiSecret
required
string
apiAuthType
required
string
Value: "header"
ingestionModel
string
Enum: "ASYNCHRONOUS" "SYNCHRONOUS"
delayBetweenRecords
number <= 3000

Number of milliseconds to pause in between each record during a SYNCHRONOUS ingestion.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "ehrType": "cerbo",
  • "apiBaseUrl": "http://example.com",
  • "apiKey": "string",
  • "apiSecret": "string",
  • "apiAuthType": "header",
  • "ingestionModel": "ASYNCHRONOUS",
  • "delayBetweenRecords": 3000
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "ehrType": "cerbo",
  • "apiBaseUrl": "http://example.com",
  • "apiKey": "string",
  • "apiSecret": "string",
  • "apiAuthType": "header",
  • "ingestionModel": "ASYNCHRONOUS",
  • "delayBetweenRecords": 3000
}

Get an EHR.

Returns an EHR.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "ehrType": "cerbo",
  • "apiBaseUrl": "http://example.com",
  • "apiKey": "string",
  • "apiSecret": "string",
  • "apiAuthType": "header",
  • "ingestionModel": "ASYNCHRONOUS",
  • "delayBetweenRecords": 3000
}

Delete an EHR.

Deletes an EHR.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
null

Update an EHR.

Updates an EHR.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "ehrType": "cerbo",
  • "apiBaseUrl": "http://example.com",
  • "apiKey": "string",
  • "apiSecret": "string",
  • "apiAuthType": "header",
  • "ingestionModel": "ASYNCHRONOUS",
  • "delayBetweenRecords": 3000
}

Get list of EHR connectors.

Returns a list of project connectors configured for this EHR.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Create an EHR project connector

Creates an EHR project connector, which represents the ability for this EHR to tie ingested records to the connected project.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
id
required
string
ehrId
required
string
project
required
string

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "ehrId": "string",
  • "project": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "ehrId": "string",
  • "project": "string"
}

Get specific EHR connector.

Returns an EHR project connector.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

connectorId
required
string

The EHR connector id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "ehrId": "string",
  • "project": "string"
}

Delete the EHR connector.

Deletes the EHR project connector.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

connectorId
required
string

The EHR connector id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
null

Get EHR ingestions.

Returns a list of EHR ingestions.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Create an EHR ingestion

Creates an EHR ingestion, which represents a synchronization of EHR data to the LifeOmic Platform.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Request Body schema: application/json
Array of objects (EHRConnector)

The subset of configured EHR project connectors that should be used for this ingestion.

Array of objects

Individual records to be ingested.

consumePendingUpdates
boolean

Whether or not this ingestion should add pending updates to its records array

Responses

Request samples

Content type
application/json
{
  • "connectors": [
    ],
  • "records": [
    ],
  • "consumePendingUpdates": true
}

Response samples

Content type
application/json
{
  • "connectors": [
    ],
  • "records": [
    ],
  • "consumePendingUpdates": true
}

Get EHR ingestion.

Returns a an EHR ingestions.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

ingestionId
required
string

The EHR ingestion id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "links": {
    }
}

Get scheduled EHR ingestions.

Returns a list of scheduled EHR ingestions.

Authorizations:
Oauth2api-key
path Parameters
ehrId
required
string

The EHR id.

header Parameters
LifeOmic-Account
required
string

The LifeOmic account to access.

Responses

Response samples

Content type
application/json
{
  • "items": [