Events/EntityList APIs

The 3.7.0 release of the Graphical APIs(Events/EntityList) focuses on support of an existing standard API permissions,authentication based on Client ID and Subscription Key. As individual,subject API return all studies available for data API call Events API return all transactions (create, update, delete) on an entity (Subject, Site, etc) based on the specified query arguments EntityList API return a list of entities (Subject, Site, etc) in a study based on the specified query arguments.

API Endpoints
# Dev:
https://irt-api.pi.bracketglobal.com/dev/graphql
# Production:
https://irt-api.signanthealth.com/graphql

Document Version

3.7.0

Changelog

3.7.0-alpha.2022.11.22

  • Graphical APIs(Studies/Events/EntityList). 2.1.0

  • an additional permissions parameter shall be included in the request to get the list of API permissions the client has access to.

Overview

The Studies/Events/EntityList APIs created with graphql endpoints.

Authentication

Authentication to the kit/shipment events API is via OpenID Connect, using the Client Credentials flow. A client ID and secret, OAuth scope, and OAuth endpoint URL will be provided by Signant Health when the API is enabled for a given client.

Permissions Model

Permissions will be granted on the basis of study ID. As the information in this first version of the API collectively serves a single use case, there will not be per-query or per-event permissions in this version.

API Requests

Requests are made according to the GraphQL standard. The request must use the POST HTTP method and must include two additional HTTP headers:

  • Authorization provides the bearer token retrieved from the OAuth server.
  • SignantHealth-API-Subscription-Key provides the API key. This is used to control throttling and usage limits.

Result sets are paginated according to the Relay Connections specification. Each event is associated with an opaque cursor value. The cursor value from the last event in a page of results can be passed into the next query, and the results from that query will begin with the next event. If no cursor value is passed to the query, the results will begin with the earliest available event.

Each page indicates whether there is additional data available. If so, the caller may immediately make another request with the cursor from the last event in the current page. If not, the caller should wait for the agreed polling interval before making another request, again using the cursor from the last event in the current page.

Status Codes

The following status codes can be returned by the API:

Code Name Description
3 SyntaxError Check request arguments for completeness & clarity.
95 StudyKeyMaxLengthExceeded StudyKey cannot be longer than 50 characters.
150 ShipmentKitEventsNotEnabled This API has not been enabled on the requested study.
140 InactiveStudy The requested study is inactive and will not accept API requests.
201 InvalidStudyKey The value of `studyKey must be valid and may not be null or empty.
900 InvalidIrtSubscriptionID Request is not properly authorized.

Parameters

The following parameters will be supplied by Signant Health to the client or will be agreed by the two parties when the API is enabled for the client or an individual study.

Parameter Description
API URL The URL for accessing the API
Auth URL The URL for the OAuth API to generate an access token
Credentials A client ID and secret to authenticate with
OAuth Scope A scope to request from the OAuth server
API Key An API key to be provided in the HTTP headers with each request.
Study ID The internal ID for each study enabled for this API. The client may supply a study key as well.
Rate Limits The number of calls per minute that will be accepted per study.
Polling Interval The time period the caller should wait after retrieving all currently available events.

Queries

entityList

Description

Return a list of entities (Subject, Site, etc) in a study based on the specified query arguments. The result entity list is paginated.

Response

Returns an EntityCollection

Arguments
Name Description
studyKey - String! The internal ID or customer-provided key for the study
filter - EntityFilterInput! To filter the events by entity Filter input
first - Int! The maximum number of events to be returned in the page. The maximum value is 100; if not provided, it defaults to 100. It may be the case that fewer results are returned than are requested, even if more are available.
startKey - String The cursor value of the next event to be retrieved

Example

Query
query EntityList(
  $studyKey: String!,
  $filter: EntityFilterInput!,
  $first: Int!,
  $startKey: String
) {
  entityList(
    studyKey: $studyKey,
    filter: $filter,
    first: $first,
    startKey: $startKey
  ) {
    studyKey
    entities {
      ... on Error {
        code
        message
      }
      ... on Subject {
        subjectId
        screeningNumber
        subjectNumber
        tenantId
        age
        cohortId
        cohortName
        cohortDescription
        currentDosageId
        currentDosageDescription
        dob
        genderId
        genderDisplay
        initials
        siteId
        siteNumber
        subjectStatusId
        subjectStatusNumber
        subjectStatusDescription
        subjectStatusIsActive
        deactivationSubjectVisitId
        deactivationSubjectVisitDate
        firstUnblindingSubjectVisitId
        firstUnblindingSubjectVisitDate
        lastDispensingSubjectVisitId
        lastDispensingSubjectVisitDate
        randomizationId
        randnum
        stratificationFactor1
        stratificationFactor1Value
        stratificationFactor2
        stratificationFactor2Value
        stratificationFactor3
        stratificationFactor3Value
        stratificationFactor4
        stratificationFactor4Value
        stratificationFactor5
        stratificationFactor5Value
        stratificationFactor6
        stratificationFactor6Value
        stratificationFactor7
        stratificationFactor7Value
        stratificationFactor8
        stratificationFactor8Value
        stratificationFactor9
        stratificationFactor9Value
        stratificationFactor10
        stratificationFactor10Value
        subjectParameters {
          subjectParameterId
          subjectId
          parameterId
          parameterName
          parameterDescription
          parameterValue
          recordedDateTime
          userId
        }
        subjectVisits {
          subjectVisitId
          subjectId
          visitId
          visitType
          visitDescription
          visitDateTime
          inWindow
          currentDosageId
          currentDosageDescription
          previousDosageId
          previousDosageDescription
          deactivationReasonId
          deactivationReasonCode
          deactivationReasonDescription
          visitNumber
          userId
          subjectVisitKits {
            subjectVisitKitId
            subjectVisitId
            kitId
            isConfirmed
            kitNumber
          }
          subjectVisitParameters {
            subjectVisitParameterId
            subjectVisitId
            parameterId
            parameterName
            parameterDescription
            parameterValue
            recordedDateTime
            userId
          }
        }
      }
    }
    pageInfo {
      hasNextPage
      nextStartKey
    }
  }
}
Variables
{
  "studyKey": "StudyKeyValue1",
  "filter": EntityFilterInput,
  "first": 50,
  "startKey": 0
}
Response
{
  "data": {
    "entityList": {
      "studyKey": "StudyKeyValue1",
      "entities": ["Subject/Error"],
      "pageInfo": {
        "hasNextPage": "true",
        "nextStartKey": "NDk2MDY4fHBhZ2luYXRpb25fZDk2NzBjMDAwMDFkZXN0aW55YnJlYXN0MDZfU3ViamVjdHNfMF8yMDIxLTAzLTI1VDA5OjExOjE4LjQ4M1pfMjAyMS0wNC0yMVQwNzo1MDozMx45ODJaXzI="
      }
    }
  }
}

events

Description

Return all transactions (create, update, delete) on an entity (Subject, Site, etc) based on the specified query arguments. The result events list is paginated.

Response

Returns an EventCollection

Arguments
Name Description
studyKey - String! The internal ID or customer-provided key for the study
filter - EntityFilterInput! To filter the events by entity Filter input
dateRange - DateRangeInput! dateRange: DateRangeInput!,
first - Int! The maximum number of events to be returned in the page. The maximum value is 100; if not provided, it defaults to 100. It may be the case that fewer results are returned than are requested, even if more are available.
startKey - String The cursor value of the next event to be retrieved

Example

Query
query Events(
  $studyKey: String!,
  $filter: EntityFilterInput!,
  $dateRange: DateRangeInput!,
  $first: Int!,
  $startKey: String
) {
  events(
    studyKey: $studyKey,
    filter: $filter,
    dateRange: $dateRange,
    first: $first,
    startKey: $startKey
  ) {
    studyKey
    events {
      tenantId
      eventId
      eventDateTime
      eventType
      eventName
      eventSource
      eventRefId
      eventRef
      eventData
      referenceIds
    }
    lastEventId
    pageInfo {
      currentPage
      totalPages
      nextStartKey
    }
  }
}
Variables
{
  "studyKey": "StudyKeyValue1",
  "filter": EntityFilterInput,
  "dateRange": DateRangeInput,
  "first": 50,
  "startKey": 0
}
Response
{
  "data": {
    "events": {
      "studyKey": "StudyKeyValue1",
      "events": [Event],
      "lastEventId": 41085,
      "pageInfo": {
        "currentPage": "2",
        "totalPages": "5",
        "nextStartKey": "NDk2MDY4fHBhZ2luYXRpb25fZDk2NzBjMDAwMDFkZXN0aW55YnJlYXN0MDZfU3ViamVjdHNfMF8yMDIxLTAzLTI1VDA5OjExOjE4LjQ4M1pfMjAyMS0wNC0yMVQwNzo1MDozMx45ODJaXzI="
      }
    }
  }
}

studies

Description

This is to be called when the studies data is Queried.

Response

Returns [Study]

Example

Query
query Studies {
  studies {
    studyName
    studyKey
    tenantId
    customStudyIdentifier
    permissions
  }
}
Response
{
  "data": {
    "studies": [
      {
        "studyName": "Client-Study-Name-1",
        "studyKey": "StudyKeyValue1",
        "tenantId": "b802271f-fa92-4909-8431-29d2d7359296",
        "customStudyIdentifier": "ClientCustomIdentifierValue1",
        "permissions": ["reporting-subjects"]
      }
    ]
  }
}

Mutations

saveCustomIdentifier

Response

Returns a CustomIdentifierMutationResult

Arguments
Name Description
studyKey - String!
customStudyIdentifier - String!

Example

Query
mutation SaveCustomIdentifier(
  $studyKey: String!,
  $customStudyIdentifier: String!
) {
  saveCustomIdentifier(
    studyKey: $studyKey,
    customStudyIdentifier: $customStudyIdentifier
  ) {
    studyKey
    customStudyIdentifier
    error {
      code
      message
    }
  }
}
Variables
{
  "studyKey": "StudyKeyValue1",
  "customStudyIdentifier": "ClientCustomIdentifierValue1"
}
Response
{
  "data": {
    "saveCustomIdentifier": {
      "studyKey": "StudyKeyValue1",
      "customStudyIdentifier": "ClientCustomIdentifierValue1",
      "error": Error
    }
  }
}

Types

Boolean

Description

The Boolean scalar type represents true or false.

CustomIdentifierMutationResult

Fields
Field Name Description
studyKey - String! The internal ID or customer-provided key for the study
customStudyIdentifier - String The internal custom Name of the study
error - Error The human error details
Example
{
  "studyKey": "StudyKeyValue1",
  "customStudyIdentifier": "ClientCustomIdentifierValue1",
  "error": Error
}

DateRangeInput

Fields
Input Field Description
from - StringThatCouldBeFormattedAsDateTime! The Filter for From date and time the event took place e.g. "2000-04-29T23:30:40.567Z"
to - StringThatCouldBeFormattedAsDateTime! The Filter for To date and time the event took place e.g. "2000-04-29T23:30:40.567Z"
Example
{"from": "2020-03-04T00:00:00Z", "to": "2021-08-04T15:15:35.550Z"}

Entity

Description

A Entity may be either Error or Subject, and is referenced by different parameters depending on its type.

Types
Union Types

Error

Subject

Example
Error

EntityCollection

Fields
Field Name Description
studyKey - String! The internal ID or customer-provided key for the study
entities - [Entity]! Return a list of entities (Subject, Site, etc) in a study based on the specified query arguments.
pageInfo - SimplePageInfo Metadata for this page
Example
{
  "studyKey": "StudyKeyValue1",
  "entities": ["Subject/Error"],
  "pageInfo": {
    "hasNextPage": "true",
    "nextStartKey": "NDk2MDY4fHBhZ2luYXRpb25fZDk2NzBjMDAwMDFkZXN0aW55YnJlYXN0MDZfU3ViamVjdHNfMF8yMDIxLTAzLTI1VDA5OjExOjE4LjQ4M1pfMjAyMS0wNC0yMVQwNzo1MDozMx45ODJaXzI="
  }
}

EntityFilterInput

Fields
Input Field Description
entity - EntityType! Entities to return (e.g. subjects, sites, etc.)
entityRefId - String To filter the events by Guid Id of the entity.
eventType - EventType To filter the events by the type of event such as CREATED, MODIFIED or DELETED.
siteNumber - String To filter the events for the specific site.
entityRef - String To filter the events by widely known identifier of the entity (e.g. subject screening number for subjects entity or site number for sites entity)
Example
{
  "entity": "SUBJECTS",
  "entityRefId": "03F910B1-2A5E-EA11-80E1-000D3A3B2BDE",
  "eventType": "CREATED",
  "siteNumber": 1001,
  "entityRef": "E0004006"
}

EntityType

Description

This enum Represents the types of Entities available through the UI.

Values
Enum Value Description

SUBJECTS

The Enum for SUBJECTS Entity

SITES

The Enum for SITES Entity

USERS

The Enum for USERS Entity
Example
"SUBJECTS"

Error

Description

This represents a single error

Fields
Field Name Description
code - Int A numeric error code
message - String A human-readable error message
Example
{"code": 987, "message": "xyz789"}

Event

Fields
Field Name Description
tenantId - ID! The internal ID or RTSM generated key for the tenant
eventId - ID! The internal ID or RTSM generated key for the Event
eventDateTime - String! The date and time the event was recorded.
eventType - EventType! A list of event types.
eventName - String! The Value of the Event Type
eventSource - String! The Source of the event generated.
eventRefId - ID! The Guid Id of the entity.
eventRef - ID Identifier of the entity (e.g. subject screening number for subjects entity or site number for sites entity)
eventData - JSONObject! The Event results as JSONObject
referenceIds - JSONObject! The referenceIds os the result Data.
Example
{
  "tenantId": "b802271f-fa92-4909-8431-29d2d7359296",
  "eventId": 40702,
  "eventDateTime": "2020-04-29T23:30:40.567Z",
  "eventType": "CREATED",
  "eventName": "subjects",
  "eventSource": "subject",
  "eventRefId": "3ddd8c6f-718a-ea11-80e3-000d3a359f53",
  "eventRef": "e1001002",
  "eventData": {
    "cohortDescription": "Cohort 1: 5mg",
    "cohortName": "Cohort 1: 5mg",
    "currentDosageId": "57155ECC-7217-41FF-8E3C-B1D2920C1B4F",
    "cohortId": "04544576-8566-40AB-973B-A1D26C454AB4"
  },
  "referenceIds": {
    "subjectid": "969a2afa-d46c-eb11-80e5-000d3a3b2bde",
    "siteid": "b162a002-cc6c-eb11-80e5-000d3a3b2bde"
  }
}

EventCollection

Fields
Field Name Description
studyKey - String! The internal RTSM ID for the study, or the sponsor-provided key if one has been set
events - [Event]! The list of Events to be returned.
lastEventId - Long Last retrieved Event ID
pageInfo - PageInfo Metadata for this page
Example
{
  "studyKey": "StudyKeyValue1",
  "events": [Event],
  "lastEventId": 41085,
  "pageInfo": {
    "currentPage": "2",
    "totalPages": "5",
    "nextStartKey": "NDk2MDY4fHBhZ2luYXRpb25fZDk2NzBjMDAwMDFkZXN0aW55YnJlYXN0MDZfU3ViamVjdHNfMF8yMDIxLTAzLTI1VDA5OjExOjE4LjQ4M1pfMjAyMS0wNC0yMVQwNzo1MDozMx45ODJaXzI="
  }
}

EventType

Values
Enum Value Description

CREATED

Indicates a CREATED Entity

MODIFIED

Indicates a MODIFIED Entity

DELETED

Indicates a DELETED Entity
Example
"CREATED"

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
"4"

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

JSONObject

Example
{}

Long

Example
{}

PageInfo

Description

Provides pagination metadata. See [https://relay.dev/graphql/connections.htm ] for further information.

Fields
Field Name Description
currentPage - Int! value identifying the number of this page of results.
totalPages - Int! value identifying the Total pages of results.
nextStartKey - String The cursor value of the next event to be retrieved. If present, the page will begin with the next event matching the search criteria. If absent, the page will begin with the earliest event matching the search criteria.
Example
{
  "currentPage": 2,
  "totalPages": 5,
  "nextStartKey": "NDk2MDY4fHBhZ2luYXRpb25fZDk2NzBjMDAwMDFkZXN0aW55YnJlYXN0MDZfU3ViamVjdHNfMF8yMDIxLTAzLTI1VDA5OjExOjE4LjQ4M1pfMjAyMS0wNC0yMVQwNzo1MDozMx45ODJaXzI="
}

SimplePageInfo

Fields
Field Name Description
hasNextPage - Boolean! True if there are more events available meeting the search criteria after the end of the current page. If so, the caller may immediately make another request; if not, then the caller must wait for the agreed polling interval before making another request. In either case the value of endCursor is used for the after parameter of the next request.
nextStartKey - String The cursor value of the next event to be retrieved. If present, the page will begin with the next event matching the search criteria. If absent, the page will begin with the earliest event matching the search criteria.
Example
{
  "hasNextPage": true,
  "nextStartKey": "NDk2MDY4fHBhZ2luYXRpb25fZDk2NzBjMDAwMDFkZXN0aW55YnJlYXN0MDZfU3ViamVjdHNfMF8yMDIxLTAzLTI1VDA5OjExOjE4LjQ4M1pfMjAyMS0wNC0yMVQwNzo1MDozMx45ODJaXzI="
}

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"xyz789"

StringThatCouldBeFormattedAsDateTime

Example
StringThatCouldBeFormattedAsDateTime

Study

Description

Represents the "identity" of an Study, without providing the entire current state of the record.

Fields
Field Name Description
studyName - String! The internal Name of the study
studyKey - String! The internal ID or customer-provided key for the study
tenantId - ID! The internal ID or RTSM generated key for the tenant
customStudyIdentifier - String The internal custom Name of the study
permissions - [String] To get the list of API permissions the client has access to.
Example
{
  "studyName": "Client-Study-Name-1",
  "studyKey": "StudyKeyValue1",
  "tenantId": "b802271f-fa92-4909-8431-29d2d7359296",
  "customStudyIdentifier": "ClientCustomIdentifierValue1",
  "permissions": ["reporting-subjects"]
}

Subject

Description

Represents the identity of a subject, without providing the entire current state of the subject record.

Fields
Field Name Description
subjectId - ID The RTSM-generated internal identifier for the subject record
screeningNumber - ID The human-readable identifier for the subject. Note that if this value has been changed on the subject record since the event took place, the previous value may be returned instead of the current value.
subjectNumber - ID
tenantId - ID The internal ID or customer-provided key for the tenant
age - Int age
cohortId - ID The RTSM-generated internal identifier for the cohort record
cohortName - String The cohort Name
cohortDescription - String The cohort Description
currentDosageId - ID The RTSM-generated identifier for the currentDosageId
currentDosageDescription - String The current Dosage Description
dob - String Date of Birth e.g. "Mar 3 1990 12:00AM"
genderId - ID The RTSM-generated identifier for the genderId
genderDisplay - String Value of Gender for Display
initials - String The initials e.g. "AAA"
siteId - ID The RTSM-generated identifier for the site
siteNumber - String The Display value of the Site e.g. "0000001"
subjectStatusId - ID The RTSM-generated identifier for the Subject Status
subjectStatusNumber - Int The Display value of the Status Number e.g. 4
subjectStatusDescription - String The Display value of the Status Description e.g. "Early Terminated"
subjectStatusIsActive - String The string representing Subject Status is active or Not e.g. "0" or "1"
deactivationSubjectVisitId - ID The RTSM-generated identifier for the deactivationSubjectVisitId e.g. "BAA7E16F-BC86-EB11-80EE-000D3A359F53"
deactivationSubjectVisitDate - String The Display value of the deactivation SubjectVisit Date e.g. "Mar 16 2021 12:00AM"
firstUnblindingSubjectVisitId - ID The identifier for the first Unblinding Subject VisitId
firstUnblindingSubjectVisitDate - String The value of the first Unblinding SubjectVisit Date e.g. "Mar 16 2021 12:00AM"
lastDispensingSubjectVisitId - ID The identifier for the last Dispensing Subject VisitId
lastDispensingSubjectVisitDate - String The Display value of the last Dispensing Subject Visit Date e.g. "Apr 29 2020 4:38PM"
randomizationId - ID The identifier for randomizationId
randnum - String The Display value of the Randomization Number e.g. "Early Terminated"
stratificationFactor1 - String The stratificationFactor 1
stratificationFactor1Value - String The stratificationFactor 1 Value
stratificationFactor2 - String The stratificationFactor 2
stratificationFactor2Value - String The stratificationFactor 2 Value
stratificationFactor3 - String The stratificationFactor 3
stratificationFactor3Value - String The stratificationFactor 3 Value
stratificationFactor4 - String The stratificationFactor 4
stratificationFactor4Value - String The stratificationFactor 4 Value
stratificationFactor5 - String The stratificationFactor 5
stratificationFactor5Value - String The stratificationFactor 5 Value
stratificationFactor6 - String The stratificationFactor 6
stratificationFactor6Value - String The stratificationFactor 6 Value
stratificationFactor7 - String The stratificationFactor 7
stratificationFactor7Value - String The stratificationFactor 7 Value
stratificationFactor8 - String the stratificationFactor 8
stratificationFactor8Value - String The stratificationFactor 8 Value
stratificationFactor9 - String The stratificationFactor 9
stratificationFactor9Value - String The stratificationFactor 9 Value
stratificationFactor10 - String The stratificationFactor 10
stratificationFactor10Value - String The stratificationFactor 10 Value
subjectParameters - [SubjectParameter] List of SubjectParameters
subjectVisits - [SubjectVisit] List of subjectVisits
Example
{
  "subjectId": "969a2afa-d46c-eb11-80e5-000d3a3b2bde",
  "screeningNumber": "E1001001",
  "subjectNumber": null,
  "tenantId": "8719b43e-bd51-4706-ba9b-39913c8ded9c",
  "age": 51,
  "cohortId": "04544576-8566-40AB-973B-A1D26C454AB4",
  "cohortName": "Cohort 1: 5mg",
  "cohortDescription": "Cohort 1: 5mg",
  "currentDosageId": "57155ECC-7217-41FF-8E3C-B1D2920C1B4F",
  "currentDosageDescription": "5mg",
  "dob": "Jan  1 1970 12:00AM",
  "genderId": "82B1ADE1-3151-EB11-AD47-000D3A315063",
  "genderDisplay": "Female",
  "initials": null,
  "siteId": "B162A002-CC6C-EB11-80E5-000D3A3B2BDE",
  "siteNumber": 1001,
  "subjectStatusId": "1CB7ADE1-3151-EB11-AD47-000D3A315063",
  "subjectStatusNumber": 3,
  "subjectStatusDescription": "Randomized",
  "subjectStatusIsActive": 1,
  "deactivationSubjectVisitId": null,
  "deactivationSubjectVisitDate": null,
  "firstUnblindingSubjectVisitId": null,
  "firstUnblindingSubjectVisitDate": null,
  "lastDispensingSubjectVisitId": "F2A88D6E-D56C-EB11-80E5-000D3A3B2BDE",
  "lastDispensingSubjectVisitDate": "Feb 11 2021  5:55PM",
  "randomizationId": "25af864f-5c6c-eb11-80e5-000d3a3b2bde",
  "randnum": 1001,
  "stratificationFactor1": "<=165 cm",
  "stratificationFactor1Value": 1,
  "stratificationFactor2": "<=48 kgs",
  "stratificationFactor2Value": 1,
  "stratificationFactor3": "Mild",
  "stratificationFactor3Value": 1,
  "stratificationFactor4": null,
  "stratificationFactor4Value": null,
  "stratificationFactor5": null,
  "stratificationFactor5Value": null,
  "stratificationFactor6": null,
  "stratificationFactor6Value": null,
  "stratificationFactor7": null,
  "stratificationFactor7Value": null,
  "stratificationFactor8": null,
  "stratificationFactor8Value": null,
  "stratificationFactor9": null,
  "stratificationFactor9Value": null,
  "stratificationFactor10": null,
  "stratificationFactor10Value": null,
  "subjectParameters": [SubjectParameter],
  "subjectVisits": [SubjectVisit]
}

SubjectParameter

Fields
Field Name Description
subjectParameterId - ID The internal identifier for the Subject parameterId e.g. "5549C3ED-748A-EA11-80E3-000D3A359F53"
subjectId - ID The internal identifier for the Subject e.g. "1F2FFA55-748A-EA11-80E3-000D3A359F53"
parameterId - ID The internal identifier for the parameter e.g. "12A01A12-04A0-1A12-0BA0-000D3A382836"
parameterName - String The Name of the parameter e.g. "StratificationFactor3"
parameterDescription - String The parameter Description e.g. "Disease Severity"
parameterValue - String The Display value of the parameter e.g. "2"
recordedDateTime - String The Date when the event ws recorded e.g. "Apr 29 2020 4:55PM"
userId - ID The internal identifier for userId e.g. "1F2FFA55-748A-EA11-80E3-000D3A359F53"
Example
{
  "subjectParameterId": "999A2AFA-D46C-EB11-80E5-000D3A3B2BDE",
  "subjectId": "969A2AFA-D46C-EB11-80E5-000D3A3B2BDE",
  "parameterId": "14B4ADE1-3151-EB11-AD47-000D3A315063",
  "parameterName": "InformedConsentDate",
  "parameterDescription": "DD MMM YYYY",
  "parameterValue": "2/12/2021 12:00:00 AM",
  "recordedDateTime": "Feb 11 2021  5:52PM",
  "userId": "54cfd1a2-69cd-405c-b273-b238bb23af25"
}

SubjectVisit

Fields
Field Name Description
subjectVisitId - ID The internal identifier for the Subject Visit e.g. "40DD8C6F-718A-EA11-80E3-000D3A359F53"
subjectId - ID The internal identifier for the Subject e.g. "3DDD8C6F-718A-EA11-80E3-000D3A359F53"
visitId - ID The internal identifier for the Visit e.g. "97812551-BC35-4AF3-9858-543A9146AD55"
visitType - Int The Type of the Visit e.g. 2
visitDescription - String The Visit Description e.g. ""Screening"
visitDateTime - String The Date Time of the Visit e.g. "Apr 29 2020 12:00AM"
inWindow - Int The identifier if the Visit is In-Window or outsite the Window e.g. 1
currentDosageId - ID The internal identifier for the current Dosage e.g. "A52ADD72-1E08-ED11-8DA2-000D3A35E419"
currentDosageDescription - String The current Dosage Description e.g. "2mg"
previousDosageId - ID The internal identifier for the previous Dosage e.g. "A52ADD72-1E08-ED11-8DA2-000D3A35E418"
previousDosageDescription - String The previous Dosage Description e.g. "5mg"
deactivationReasonId - ID The internal identifier for the deactivation Reason e.g. "A52ADD72-1E08-ED11-8DA2-000D3A35E418"
deactivationReasonCode - String The internal code for deactivation Reason e.g. "04"
deactivationReasonDescription - String The Description of deactivation Reason e.g. "n/a"
visitNumber - String The Display value of the Viit Number e.g. "2"
userId - ID The identifier for the user e.g. "108D3F90-728A-EA11-80E3-000D3A359F53"
subjectVisitKits - [SubjectVisitKit] The List of SubjectVisitKits
subjectVisitParameters - [SubjectVisitParameter] The List of SubjectVisitParameters
Example
{
  "subjectVisitId": "A19A2AFA-D46C-EB11-80E5-000D3A3B2BDE",
  "subjectId": "969A2AFA-D46C-EB11-80E5-000D3A3B2BDE",
  "visitId": "B36CDD68-825F-4B1F-96A3-33FC148DDD51",
  "visitType": 2,
  "visitDescription": "Screening",
  "visitDateTime": "Feb 12 2021 12:00AM",
  "inWindow": 1,
  "currentDosageId": "57155ECC-7217-41FF-8E3C-B1D2920C1B4F",
  "currentDosageDescription": "5mg",
  "previousDosageId": null,
  "previousDosageDescription": null,
  "deactivationReasonId": null,
  "deactivationReasonCode": null,
  "deactivationReasonDescription": null,
  "visitNumber": "02",
  "userId": "54cfd1a2-69cd-405c-b273-b238bb23af25",
  "subjectVisitKits": [SubjectVisitKit],
  "subjectVisitParameters": [SubjectVisitParameter]
}

SubjectVisitKit

Fields
Field Name Description
subjectVisitKitId - ID The internal identifier for the Subject Visit kit e.g. "108D3F90-728A-EA11-80E3-000D3A359F53"
subjectVisitId - ID The internal identifier for the Subject Visit e.g. "008D3F90-728A-EA11-80E3-000D3A359F53"
kitId - ID The internal identifier for the Kit e.g. "59B32A31-477B-EA11-80E2-000D3A359F53"
isConfirmed - Boolean whether the kit is Confirmed or not e.g. "True"
kitNumber - String The Display value of the Kit Number e.g. "1010"
Example
{
  "subjectVisitKitId": "01A98D6E-D56C-EB11-80E5-000D3A3B2BDE",
  "subjectVisitId": "F2A88D6E-D56C-EB11-80E5-000D3A3B2BDE",
  "kitId": "75490854-5C6C-EB11-80E5-000D3A3B2BDE",
  "isConfirmed": false,
  "kitNumber": 14623
}

SubjectVisitParameter

Fields
Field Name Description
subjectVisitParameterId - ID The internal identifier for the Subject Visit parameterId e.g. "5549C3ED-748A-EA11-80E3-000D3A359F53"
subjectVisitId - ID The internal identifier for the Subject VisitId e.g. "1F2FFA55-748A-EA11-80E3-000D3A359F53"
parameterId - ID The internal identifier for the parameter e.g. "12A01A12-04A0-1A12-0BA0-000D3A382836"
parameterName - String The Name of the parameter e.g. "StratificationFactor3"
parameterDescription - String The parameter Description e.g. "Disease Severity"
parameterValue - String The Display value of the parameter e.g. "2"
recordedDateTime - String The Date when the event ws recorded e.g. "Apr 29 2020 4:55PM"
userId - ID The internal identifier for userId e.g. "1F2FFA55-748A-EA11-80E3-000D3A359F53"
Example
{
  "subjectVisitParameterId": "C9042F3E-790F-EA11-AB9C-000D3A315732 ",
  "subjectVisitId": "F2A88D6E-D56C-EB11-80E5-000D3A3B2BDE",
  "parameterId": "B9042F3E-790F-EA11-AB9C-000D3A316851 ",
  "parameterName": "Drug1DosageSV",
  "parameterDescription": "Drug 1 Dosage at study visit ",
  "parameterValue": "500 mg",
  "recordedDateTime": "2018-11-19 05:16:21.150",
  "userId": "54cfd1a2-69cd-405c-b273-b238bb23af25"
}