Schema Documentation

Senseye GraphQL Schema

API Endpoints
https://api.senseye.io/v1/graphql
Version

1.0.0

Queries

asset

Description

Returns the asset with a given ID

Response

Returns an Asset!

Arguments
Name Description
id - ID! The ID of the asset to retrieve

Example

Query
query asset($id: ID!) {
  asset(id: $id) {
    vendor
    model
    criticality
    description
    cases {
      ...CaseFileResultSetFragment
    }
    currentOpenCaseCount
    caseStatistics {
      ...CaseStatsOverviewFragment
    }
    children {
      ...HierarchyNodeFragment
    }
    currentAttentionIndex {
      ...DataPointFragment
    }
    currentCase {
      ...CaseFileFragment
    }
    currentHealth {
      ...DataPointFragment
    }
    dataTransmissionStatus
    dataTransmissionTimes {
      ...DataTransmissionTimesFragment
    }
    downtimes {
      ...DowntimeResultSetFragment
    }
    downtimeStatistics {
      ...DowntimeStatsOverviewFragment
    }
    events {
      ...EventResultSetFragment
    }
    eventStatistics {
      ...EventStatsOverviewFragment
    }
    externalId
    health {
      ...HealthTimeSeriesFragment
    }
    attentionIndex {
      ...AttentionIndexTimeSeriesFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    isInScheduledDowntime
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    regimes {
      ...RegimeResultSetFragment
    }
    regimeIdentifier {
      ...MeasureFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    sendingDataConfidenceLevel
    sensors {
      ...SensorFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    validOntologyTypes {
      ...OntologyTypeFragment
    }
    kpiClassifications {
      ...FilteredKPIClassificationFragment
    }
    kpiStatistic {
      ...KPIStatisticFragment
    }
    kpiStatistics {
      ...KPIStatisticsFragment
    }
    measurementClassifications {
      ...FilteredMeasurementClassificationFragment
    }
    anomalyAnalysis {
      ...AnalysisFragment
    }
    nodeGroups {
      ...NodeGroupResultSetFragment
    }
    failureModes {
      ...FailureModeFragment
    }
    workActivities {
      ...WorkActivityFragment
    }
    predictedNeedForIntervention {
      ...PredictedNeedForInterventionFragment
    }
    organization {
      ...OrganizationFragment
    }
    version
    similarAssets {
      ...SimilarAssetResultSetFragment
    }
    consumesRegimeCalendar {
      ...RegimeCalendarFragment
    }
    producesRegimeCalendar {
      ...RegimeCalendarFragment
    }
    defaultControlParameterMeasure {
      ...MeasureFragment
    }
    defaultControlParameterMeasures {
      ...MeasureFragment
    }
    watchedStatus {
      ...WatchedStatusFragment
    }
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "asset": {
      "vendor": "abc123",
      "model": "abc123",
      "criticality": "HIGH",
      "description": "xyz789",
      "cases": CaseFileResultSet,
      "currentOpenCaseCount": 123,
      "caseStatistics": CaseStatsOverview,
      "children": [HierarchyNode],
      "currentAttentionIndex": DataPoint,
      "currentCase": CaseFile,
      "currentHealth": DataPoint,
      "dataTransmissionStatus": "NO_RECENT_DATA",
      "dataTransmissionTimes": DataTransmissionTimes,
      "downtimes": DowntimeResultSet,
      "downtimeStatistics": DowntimeStatsOverview,
      "events": EventResultSet,
      "eventStatistics": EventStatsOverview,
      "externalId": "4",
      "health": HealthTimeSeries,
      "attentionIndex": AttentionIndexTimeSeries,
      "id": 4,
      "insights": InsightResultSet,
      "isLeaf": false,
      "isInScheduledDowntime": true,
      "name": "xyz789",
      "displayName": "xyz789",
      "canEdit": true,
      "canDelete": true,
      "canEditMetadata": false,
      "canEditAttributes": false,
      "canMove": true,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "regimes": RegimeResultSet,
      "regimeIdentifier": Measure,
      "search": HierarchyNodeResultSet,
      "sendingDataConfidenceLevel": 123.45,
      "sensors": [Sensor],
      "type": "ASSET",
      "ontologyType": OntologyType,
      "validOntologyTypes": [OntologyType],
      "kpiClassifications": [FilteredKPIClassification],
      "kpiStatistic": KPIStatistic,
      "kpiStatistics": KPIStatistics,
      "measurementClassifications": [
        FilteredMeasurementClassification
      ],
      "anomalyAnalysis": Analysis,
      "nodeGroups": NodeGroupResultSet,
      "failureModes": [FailureMode],
      "workActivities": [WorkActivity],
      "predictedNeedForIntervention": PredictedNeedForIntervention,
      "organization": Organization,
      "version": "abc123",
      "similarAssets": SimilarAssetResultSet,
      "consumesRegimeCalendar": RegimeCalendar,
      "producesRegimeCalendar": RegimeCalendar,
      "defaultControlParameterMeasure": Measure,
      "defaultControlParameterMeasures": [Measure],
      "watchedStatus": WatchedStatus,
      "validExternalMappingTypes": [ExternalMappingType],
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ]
    }
  }
}

assetByExternalID

Description

Returns the asset associated with the given external ID

Response

Returns an Asset!

Arguments
Name Description
externalID - ID! The external ID of the asset to retrieve

Example

Query
query assetByExternalID($externalID: ID!) {
  assetByExternalID(externalID: $externalID) {
    vendor
    model
    criticality
    description
    cases {
      ...CaseFileResultSetFragment
    }
    currentOpenCaseCount
    caseStatistics {
      ...CaseStatsOverviewFragment
    }
    children {
      ...HierarchyNodeFragment
    }
    currentAttentionIndex {
      ...DataPointFragment
    }
    currentCase {
      ...CaseFileFragment
    }
    currentHealth {
      ...DataPointFragment
    }
    dataTransmissionStatus
    dataTransmissionTimes {
      ...DataTransmissionTimesFragment
    }
    downtimes {
      ...DowntimeResultSetFragment
    }
    downtimeStatistics {
      ...DowntimeStatsOverviewFragment
    }
    events {
      ...EventResultSetFragment
    }
    eventStatistics {
      ...EventStatsOverviewFragment
    }
    externalId
    health {
      ...HealthTimeSeriesFragment
    }
    attentionIndex {
      ...AttentionIndexTimeSeriesFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    isInScheduledDowntime
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    regimes {
      ...RegimeResultSetFragment
    }
    regimeIdentifier {
      ...MeasureFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    sendingDataConfidenceLevel
    sensors {
      ...SensorFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    validOntologyTypes {
      ...OntologyTypeFragment
    }
    kpiClassifications {
      ...FilteredKPIClassificationFragment
    }
    kpiStatistic {
      ...KPIStatisticFragment
    }
    kpiStatistics {
      ...KPIStatisticsFragment
    }
    measurementClassifications {
      ...FilteredMeasurementClassificationFragment
    }
    anomalyAnalysis {
      ...AnalysisFragment
    }
    nodeGroups {
      ...NodeGroupResultSetFragment
    }
    failureModes {
      ...FailureModeFragment
    }
    workActivities {
      ...WorkActivityFragment
    }
    predictedNeedForIntervention {
      ...PredictedNeedForInterventionFragment
    }
    organization {
      ...OrganizationFragment
    }
    version
    similarAssets {
      ...SimilarAssetResultSetFragment
    }
    consumesRegimeCalendar {
      ...RegimeCalendarFragment
    }
    producesRegimeCalendar {
      ...RegimeCalendarFragment
    }
    defaultControlParameterMeasure {
      ...MeasureFragment
    }
    defaultControlParameterMeasures {
      ...MeasureFragment
    }
    watchedStatus {
      ...WatchedStatusFragment
    }
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
  }
}
Variables
{"externalID": "4"}
Response
{
  "data": {
    "assetByExternalID": {
      "vendor": "abc123",
      "model": "abc123",
      "criticality": "HIGH",
      "description": "xyz789",
      "cases": CaseFileResultSet,
      "currentOpenCaseCount": 987,
      "caseStatistics": CaseStatsOverview,
      "children": [HierarchyNode],
      "currentAttentionIndex": DataPoint,
      "currentCase": CaseFile,
      "currentHealth": DataPoint,
      "dataTransmissionStatus": "NO_RECENT_DATA",
      "dataTransmissionTimes": DataTransmissionTimes,
      "downtimes": DowntimeResultSet,
      "downtimeStatistics": DowntimeStatsOverview,
      "events": EventResultSet,
      "eventStatistics": EventStatsOverview,
      "externalId": 4,
      "health": HealthTimeSeries,
      "attentionIndex": AttentionIndexTimeSeries,
      "id": 4,
      "insights": InsightResultSet,
      "isLeaf": false,
      "isInScheduledDowntime": true,
      "name": "xyz789",
      "displayName": "xyz789",
      "canEdit": true,
      "canDelete": true,
      "canEditMetadata": false,
      "canEditAttributes": false,
      "canMove": false,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "regimes": RegimeResultSet,
      "regimeIdentifier": Measure,
      "search": HierarchyNodeResultSet,
      "sendingDataConfidenceLevel": 987.65,
      "sensors": [Sensor],
      "type": "ASSET",
      "ontologyType": OntologyType,
      "validOntologyTypes": [OntologyType],
      "kpiClassifications": [FilteredKPIClassification],
      "kpiStatistic": KPIStatistic,
      "kpiStatistics": KPIStatistics,
      "measurementClassifications": [
        FilteredMeasurementClassification
      ],
      "anomalyAnalysis": Analysis,
      "nodeGroups": NodeGroupResultSet,
      "failureModes": [FailureMode],
      "workActivities": [WorkActivity],
      "predictedNeedForIntervention": PredictedNeedForIntervention,
      "organization": Organization,
      "version": "abc123",
      "similarAssets": SimilarAssetResultSet,
      "consumesRegimeCalendar": RegimeCalendar,
      "producesRegimeCalendar": RegimeCalendar,
      "defaultControlParameterMeasure": Measure,
      "defaultControlParameterMeasures": [Measure],
      "watchedStatus": WatchedStatus,
      "validExternalMappingTypes": [ExternalMappingType],
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ]
    }
  }
}

case

Description

Returns a case given its ID

Response

Returns a CaseFile!

Arguments
Name Description
id - ID! The ID of the casefile to retrieve

Example

Query
query case($id: ID!) {
  case(id: $id) {
    acknowledgement {
      ...AcknowledgementFragment
    }
    asset {
      ...AssetFragment
    }
    closedAt
    description
    feedback {
      ...CaseFeedbackFragment
    }
    id
    isOpen
    openedAt
    primaryTrigger
    triggers
    closedBy {
      ...UserFragment
    }
    content {
      ...CollectionFragment
    }
    failureModes {
      ...FailureModeFragment
    }
    recommendedActions
    latestManualNotificationEvent {
      ...ManualNotificationEventFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "case": {
      "acknowledgement": Acknowledgement,
      "asset": Asset,
      "closedAt": "10:15:30Z",
      "description": "abc123",
      "feedback": CaseFeedback,
      "id": 4,
      "isOpen": true,
      "openedAt": "10:15:30Z",
      "primaryTrigger": "ANOMALY",
      "triggers": ["ANOMALY"],
      "closedBy": User,
      "content": Collection,
      "failureModes": [FailureMode],
      "recommendedActions": ["xyz789"],
      "latestManualNotificationEvent": ManualNotificationEvent
    }
  }
}

creatableNodeGroupTypes

Description

Returns a list of Node Group Types the user has permission to create

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns [NodeGroupType!]!

Example

Query
query creatableNodeGroupTypes {
  creatableNodeGroupTypes
}
Response
{"data": {"creatableNodeGroupTypes": [{}]}}

enrolment

Description

Returns an enrolment with a given node ID

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Response

Returns an Enrolment!

Arguments
Name Description
nodeId - ID!

Example

Query
query enrolment($nodeId: ID!) {
  enrolment(nodeId: $nodeId) {
    nodeId
    nodeGroups {
      ...NodeGroupFragment
    }
    inherited {
      ...NodeGroupFragment
    }
  }
}
Variables
{"nodeId": "4"}
Response
{
  "data": {
    "enrolment": {
      "nodeId": "4",
      "nodeGroups": [NodeGroup],
      "inherited": [NodeGroup]
    }
  }
}

errors

Description

Returns error codes that Senseye may return in the 'errors' array of a GraphQL response

Response

Returns [SenseyeError!]!

Example

Query
query errors {
  errors
}
Response
{"data": {"errors": [{}]}}

event

Description

Returns an event with a given ID

Response

Returns an Event!

Arguments
Name Description
id - ID!

Example

Query
query event($id: ID!) {
  event(id: $id) {
    creationTime
    eventTime
    id
    message
    hierarchyNode {
      ...HierarchyNodeFragment
    }
    type
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "event": {
      "creationTime": "10:15:30Z",
      "eventTime": "10:15:30Z",
      "id": 4,
      "message": "xyz789",
      "hierarchyNode": HierarchyNode,
      "type": "FIVE_WHYS_ANALYSIS"
    }
  }
}

hierarchyNode

Description

Returns a node with a given ID

Response

Returns a HierarchyNode!

Arguments
Name Description
id - ID!

Example

Query
query hierarchyNode($id: ID!) {
  hierarchyNode(id: $id) {
    children {
      ...HierarchyNodeFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    organization {
      ...OrganizationFragment
    }
    version
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "hierarchyNode": {
      "children": [HierarchyNode],
      "id": "4",
      "insights": InsightResultSet,
      "isLeaf": false,
      "name": "abc123",
      "displayName": "xyz789",
      "canEdit": false,
      "canDelete": true,
      "canEditMetadata": false,
      "canEditAttributes": true,
      "canMove": true,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "search": HierarchyNodeResultSet,
      "type": "ASSET",
      "ontologyType": OntologyType,
      "organization": Organization,
      "version": "xyz789",
      "validExternalMappingTypes": [ExternalMappingType],
      "externalId": "4",
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ]
    }
  }
}

hierarchyNodeByExternalID

Description

Returns a node given its external ID

Response

Returns a HierarchyNode!

Arguments
Name Description
externalID - ID! The external ID of the node to retrieve

Example

Query
query hierarchyNodeByExternalID($externalID: ID!) {
  hierarchyNodeByExternalID(externalID: $externalID) {
    children {
      ...HierarchyNodeFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    organization {
      ...OrganizationFragment
    }
    version
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
  }
}
Variables
{"externalID": 4}
Response
{
  "data": {
    "hierarchyNodeByExternalID": {
      "children": [HierarchyNode],
      "id": "4",
      "insights": InsightResultSet,
      "isLeaf": false,
      "name": "xyz789",
      "displayName": "abc123",
      "canEdit": false,
      "canDelete": false,
      "canEditMetadata": true,
      "canEditAttributes": true,
      "canMove": true,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "search": HierarchyNodeResultSet,
      "type": "ASSET",
      "ontologyType": OntologyType,
      "organization": Organization,
      "version": "xyz789",
      "validExternalMappingTypes": [ExternalMappingType],
      "externalId": "4",
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ]
    }
  }
}

hierarchyNodes

Description

Returns a list of hierarchy nodes

Response

Returns [HierarchyNode!]!

Arguments
Name Description
ids - [ID!]!

Example

Query
query hierarchyNodes($ids: [ID!]!) {
  hierarchyNodes(ids: $ids) {
    children {
      ...HierarchyNodeFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    organization {
      ...OrganizationFragment
    }
    version
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
  }
}
Variables
{"ids": [4]}
Response
{
  "data": {
    "hierarchyNodes": [
      {
        "children": [HierarchyNode],
        "id": "4",
        "insights": InsightResultSet,
        "isLeaf": false,
        "name": "abc123",
        "displayName": "abc123",
        "canEdit": true,
        "canDelete": true,
        "canEditMetadata": true,
        "canEditAttributes": false,
        "canMove": false,
        "parent": HierarchyNode,
        "path": [HierarchyNode],
        "search": HierarchyNodeResultSet,
        "type": "ASSET",
        "ontologyType": OntologyType,
        "organization": Organization,
        "version": "abc123",
        "validExternalMappingTypes": [
          ExternalMappingType
        ],
        "externalId": 4,
        "externalMappings": [ExternalMapping],
        "manualNotificationTriggers": [
          ManualNotificationTrigger
        ]
      }
    ]
  }
}

insight

Description

Returns an insight given its ID

Response

Returns an Insight!

Arguments
Name Description
id - ID! The ID of the insight to retrieve
version - Int Optionally retrieve the version specified by the number
at - Time Optionally retrieve the version stored just prior to or at the time provided

Example

Query
query insight(
  $id: ID!,
  $version: Int,
  $at: Time
) {
  insight(
    id: $id,
    version: $version,
    at: $at
  ) {
    endedAt
    id
    isOpen
    longDescription
    shortDescription
    startedAt
    dataTime
    isForecast
    createdAt
    type
    source {
      ... on FeatureSource {
        ...FeatureSourceFragment
      }
      ... on RawSource {
        ...RawSourceFragment
      }
    }
    containingCaseFiles {
      ...CaseFileFragment
    }
  }
}
Variables
{
  "id": "4",
  "version": 123,
  "at": "10:15:30Z"
}
Response
{
  "data": {
    "insight": {
      "endedAt": "10:15:30Z",
      "id": "4",
      "isOpen": false,
      "longDescription": "xyz789",
      "shortDescription": "abc123",
      "startedAt": "10:15:30Z",
      "dataTime": "10:15:30Z",
      "isForecast": true,
      "createdAt": "10:15:30Z",
      "type": "ANOMALY",
      "source": [FeatureSource],
      "containingCaseFiles": [CaseFile]
    }
  }
}

measure

Description

Returns a measure with a given ID

Response

Returns a Measure!

Arguments
Name Description
id - ID!

Example

Query
query measure($id: ID!) {
  measure(id: $id) {
    children {
      ...HierarchyNodeFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    sensor {
      ...SensorFragment
    }
    timeseries {
      ...TimeSeriesFragment
    }
    rawData {
      ...TimeSeriesFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    validOntologyTypes {
      ...OntologyTypeFragment
    }
    validUnits {
      ...OntologyUnitFragment
    }
    scaling {
      ...ScalingPropertiesFragment
    }
    yAxisScaling {
      ...YAxisScalingPropertiesFragment
    }
    unit {
      ...UnitFragment
    }
    dataType
    organization {
      ...OrganizationFragment
    }
    version
    isSubjectToRegime
    isRegimeEnabled
    isControlParameter
    isDefaultControlParameter
    controlParameterBinding {
      ...ControlParameterBindingFragment
    }
    controlParameterBindings {
      ...ControlParameterBindingFragment
    }
    ignoresAssetDefaultControlParameters
    description
    isHidden
    isMuted
    isDerivedMeasure
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
    componentName
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "measure": {
      "children": [HierarchyNode],
      "id": "4",
      "insights": InsightResultSet,
      "isLeaf": true,
      "name": "xyz789",
      "displayName": "xyz789",
      "canEdit": true,
      "canDelete": false,
      "canEditMetadata": true,
      "canEditAttributes": true,
      "canMove": false,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "search": HierarchyNodeResultSet,
      "sensor": Sensor,
      "timeseries": TimeSeries,
      "rawData": TimeSeries,
      "type": "ASSET",
      "ontologyType": OntologyType,
      "validOntologyTypes": [OntologyType],
      "validUnits": [OntologyUnit],
      "scaling": ScalingProperties,
      "yAxisScaling": YAxisScalingProperties,
      "unit": Unit,
      "dataType": "BOOLEAN",
      "organization": Organization,
      "version": "abc123",
      "isSubjectToRegime": true,
      "isRegimeEnabled": false,
      "isControlParameter": false,
      "isDefaultControlParameter": true,
      "controlParameterBinding": ControlParameterBinding,
      "controlParameterBindings": [
        ControlParameterBinding
      ],
      "ignoresAssetDefaultControlParameters": true,
      "description": "xyz789",
      "isHidden": false,
      "isMuted": false,
      "isDerivedMeasure": true,
      "validExternalMappingTypes": [ExternalMappingType],
      "externalId": 4,
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ],
      "componentName": "xyz789"
    }
  }
}

nodeGroup

Description

Returns a nodegroup with a given ID

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns a NodeGroup!

Arguments
Name Description
id - ID!

Example

Query
query nodeGroup($id: ID!) {
  nodeGroup(id: $id) {
    id
    label
    organization {
      ...OrganizationFragment
    }
    creator {
      ...UserFragment
    }
    nodes {
      ...HierarchyNodeFragment
    }
    type
    priority
    rules {
      ...ConfigRuleFragment
    }
    canEditRules
    canEdit
    canDelete
    canRemoveNode
    canWritePermissions
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "nodeGroup": {
      "id": 4,
      "label": "xyz789",
      "organization": Organization,
      "creator": User,
      "nodes": [HierarchyNode],
      "type": "COMPARE",
      "priority": 987,
      "rules": [ConfigRule],
      "canEditRules": true,
      "canEdit": true,
      "canDelete": true,
      "canRemoveNode": true,
      "canWritePermissions": true
    }
  }
}

organization

Description

Returns the current organization

Response

Returns an Organization

Example

Query
query organization {
  organization {
    children {
      ...HierarchyNodeFragment
    }
    currentAttentionIndex {
      ...DataPointFragment
    }
    currentHealth {
      ...DataPointFragment
    }
    id
    name
    displayName
    downtimes {
      ...DowntimeResultSetFragment
    }
    downtimeStatistics {
      ...DowntimeStatsOverviewFragment
    }
    locale
    timezone
    insights {
      ...InsightResultSetFragment
    }
    invitations {
      ...OrganizationInvitationResultSetFragment
    }
    isLeaf
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    kpiClassifications {
      ...FilteredKPIClassificationFragment
    }
    kpiStatistic {
      ...KPIStatisticFragment
    }
    kpiStatistics {
      ...KPIStatisticsFragment
    }
    organization {
      ...OrganizationFragment
    }
    unattachedSensors {
      ...UnattachedSensorFragment
    }
    unattachedSensorByMappingId {
      ...UnattachedSensorFragment
    }
    version
    cases {
      ...CaseFileResultSetFragment
    }
    currentOpenCaseCount
    caseStatistics {
      ...CaseStatsOverviewFragment
    }
    searchAllNodeGroups {
      ...NodeGroupResultSetFragment
    }
    events {
      ...EventResultSetFragment
    }
    eventStatistics {
      ...EventStatsOverviewFragment
    }
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
    contractEnd
  }
}
Response
{
  "data": {
    "organization": {
      "children": [HierarchyNode],
      "currentAttentionIndex": DataPoint,
      "currentHealth": DataPoint,
      "id": "4",
      "name": "xyz789",
      "displayName": "xyz789",
      "downtimes": DowntimeResultSet,
      "downtimeStatistics": DowntimeStatsOverview,
      "locale": "xyz789",
      "timezone": "xyz789",
      "insights": InsightResultSet,
      "invitations": OrganizationInvitationResultSet,
      "isLeaf": true,
      "canEdit": false,
      "canDelete": false,
      "canEditMetadata": false,
      "canEditAttributes": false,
      "canMove": false,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "search": HierarchyNodeResultSet,
      "type": "ASSET",
      "ontologyType": OntologyType,
      "kpiClassifications": [FilteredKPIClassification],
      "kpiStatistic": KPIStatistic,
      "kpiStatistics": KPIStatistics,
      "organization": Organization,
      "unattachedSensors": [UnattachedSensor],
      "unattachedSensorByMappingId": UnattachedSensor,
      "version": "abc123",
      "cases": CaseFileResultSet,
      "currentOpenCaseCount": 123,
      "caseStatistics": CaseStatsOverview,
      "searchAllNodeGroups": NodeGroupResultSet,
      "events": EventResultSet,
      "eventStatistics": EventStatsOverview,
      "validExternalMappingTypes": [ExternalMappingType],
      "externalId": 4,
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ],
      "contractEnd": "10:15:30Z"
    }
  }
}

organizationInvitation

Description

Returns an organization invitation

Response

Returns an OrganizationInvitation

Arguments
Name Description
id - ID!

Example

Query
query organizationInvitation($id: ID!) {
  organizationInvitation(id: $id) {
    id
    creationTime
    acceptTime
    expirationTime
    cancelTime
    lastSentTime
    name
    email
    organization {
      ...OrganizationFragment
    }
    isAdministrator
    invitingUser {
      ...UserFragment
    }
    locale
    message
    sendCount
    status
    groups {
      ...OrganizationGroupFragment
    }
    isSSO
    userId
    organizationName
    organizationId
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "organizationInvitation": {
      "id": "4",
      "creationTime": "10:15:30Z",
      "acceptTime": "10:15:30Z",
      "expirationTime": "10:15:30Z",
      "cancelTime": "10:15:30Z",
      "lastSentTime": "10:15:30Z",
      "name": "xyz789",
      "email": "xyz789",
      "organization": Organization,
      "isAdministrator": false,
      "invitingUser": User,
      "locale": "abc123",
      "message": "xyz789",
      "sendCount": 123,
      "status": "ACCEPTED",
      "groups": [OrganizationGroup],
      "isSSO": true,
      "userId": "xyz789",
      "organizationName": "xyz789",
      "organizationId": "xyz789"
    }
  }
}

organizationInvitationWithCode

Description

Returns an organization invitation given a unique code (unauthenticated)

Response

Returns an OrganizationInvitation

Arguments
Name Description
id - ID!
code - String!

Example

Query
query organizationInvitationWithCode(
  $id: ID!,
  $code: String!
) {
  organizationInvitationWithCode(
    id: $id,
    code: $code
  ) {
    id
    creationTime
    acceptTime
    expirationTime
    cancelTime
    lastSentTime
    name
    email
    organization {
      ...OrganizationFragment
    }
    isAdministrator
    invitingUser {
      ...UserFragment
    }
    locale
    message
    sendCount
    status
    groups {
      ...OrganizationGroupFragment
    }
    isSSO
    userId
    organizationName
    organizationId
  }
}
Variables
{"id": 4, "code": "xyz789"}
Response
{
  "data": {
    "organizationInvitationWithCode": {
      "id": 4,
      "creationTime": "10:15:30Z",
      "acceptTime": "10:15:30Z",
      "expirationTime": "10:15:30Z",
      "cancelTime": "10:15:30Z",
      "lastSentTime": "10:15:30Z",
      "name": "xyz789",
      "email": "abc123",
      "organization": Organization,
      "isAdministrator": false,
      "invitingUser": User,
      "locale": "xyz789",
      "message": "xyz789",
      "sendCount": 123,
      "status": "ACCEPTED",
      "groups": [OrganizationGroup],
      "isSSO": false,
      "userId": "xyz789",
      "organizationName": "abc123",
      "organizationId": "xyz789"
    }
  }
}

organizations

Description

Returns all associated organizations

Response

Returns [Organization!]!

Example

Query
query organizations {
  organizations {
    children {
      ...HierarchyNodeFragment
    }
    currentAttentionIndex {
      ...DataPointFragment
    }
    currentHealth {
      ...DataPointFragment
    }
    id
    name
    displayName
    downtimes {
      ...DowntimeResultSetFragment
    }
    downtimeStatistics {
      ...DowntimeStatsOverviewFragment
    }
    locale
    timezone
    insights {
      ...InsightResultSetFragment
    }
    invitations {
      ...OrganizationInvitationResultSetFragment
    }
    isLeaf
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    kpiClassifications {
      ...FilteredKPIClassificationFragment
    }
    kpiStatistic {
      ...KPIStatisticFragment
    }
    kpiStatistics {
      ...KPIStatisticsFragment
    }
    organization {
      ...OrganizationFragment
    }
    unattachedSensors {
      ...UnattachedSensorFragment
    }
    unattachedSensorByMappingId {
      ...UnattachedSensorFragment
    }
    version
    cases {
      ...CaseFileResultSetFragment
    }
    currentOpenCaseCount
    caseStatistics {
      ...CaseStatsOverviewFragment
    }
    searchAllNodeGroups {
      ...NodeGroupResultSetFragment
    }
    events {
      ...EventResultSetFragment
    }
    eventStatistics {
      ...EventStatsOverviewFragment
    }
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
    contractEnd
  }
}
Response
{
  "data": {
    "organizations": [
      {
        "children": [HierarchyNode],
        "currentAttentionIndex": DataPoint,
        "currentHealth": DataPoint,
        "id": 4,
        "name": "abc123",
        "displayName": "abc123",
        "downtimes": DowntimeResultSet,
        "downtimeStatistics": DowntimeStatsOverview,
        "locale": "xyz789",
        "timezone": "abc123",
        "insights": InsightResultSet,
        "invitations": OrganizationInvitationResultSet,
        "isLeaf": false,
        "canEdit": false,
        "canDelete": false,
        "canEditMetadata": true,
        "canEditAttributes": false,
        "canMove": true,
        "parent": HierarchyNode,
        "path": [HierarchyNode],
        "search": HierarchyNodeResultSet,
        "type": "ASSET",
        "ontologyType": OntologyType,
        "kpiClassifications": [FilteredKPIClassification],
        "kpiStatistic": KPIStatistic,
        "kpiStatistics": KPIStatistics,
        "organization": Organization,
        "unattachedSensors": [UnattachedSensor],
        "unattachedSensorByMappingId": UnattachedSensor,
        "version": "xyz789",
        "cases": CaseFileResultSet,
        "currentOpenCaseCount": 123,
        "caseStatistics": CaseStatsOverview,
        "searchAllNodeGroups": NodeGroupResultSet,
        "events": EventResultSet,
        "eventStatistics": EventStatsOverview,
        "validExternalMappingTypes": [
          ExternalMappingType
        ],
        "externalId": 4,
        "externalMappings": [ExternalMapping],
        "manualNotificationTriggers": [
          ManualNotificationTrigger
        ],
        "contractEnd": "10:15:30Z"
      }
    ]
  }
}

sensor

Description

Returns a sensor with a given ID

Response

Returns a Sensor!

Arguments
Name Description
id - ID!

Example

Query
query sensor($id: ID!) {
  sensor(id: $id) {
    asset {
      ...AssetFragment
    }
    children {
      ...HierarchyNodeFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    measures {
      ...MeasureFragment
    }
    name
    displayName
    description
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    ingestType
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    hub {
      ...HubFragment
    }
    organization {
      ...OrganizationFragment
    }
    version
    dataTransmissionTimes {
      ...DataTransmissionTimesFragment
    }
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "sensor": {
      "asset": Asset,
      "children": [HierarchyNode],
      "id": "4",
      "insights": InsightResultSet,
      "isLeaf": true,
      "measures": [Measure],
      "name": "xyz789",
      "displayName": "abc123",
      "description": "xyz789",
      "canEdit": true,
      "canDelete": false,
      "canEditMetadata": true,
      "canEditAttributes": true,
      "canMove": true,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "ingestType": "FREQUENCY",
      "search": HierarchyNodeResultSet,
      "type": "ASSET",
      "ontologyType": OntologyType,
      "hub": Hub,
      "organization": Organization,
      "version": "xyz789",
      "dataTransmissionTimes": DataTransmissionTimes,
      "validExternalMappingTypes": [ExternalMappingType],
      "externalId": 4,
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ]
    }
  }
}

sensorMeasures

Description

Returns a list of sensor-measures

Response

Returns [Measure!]!

Arguments
Name Description
ids - [SensorMeasure!]! The sensor measures to retrieve

Example

Query
query sensorMeasures($ids: [SensorMeasure!]!) {
  sensorMeasures(ids: $ids) {
    children {
      ...HierarchyNodeFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    sensor {
      ...SensorFragment
    }
    timeseries {
      ...TimeSeriesFragment
    }
    rawData {
      ...TimeSeriesFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    validOntologyTypes {
      ...OntologyTypeFragment
    }
    validUnits {
      ...OntologyUnitFragment
    }
    scaling {
      ...ScalingPropertiesFragment
    }
    yAxisScaling {
      ...YAxisScalingPropertiesFragment
    }
    unit {
      ...UnitFragment
    }
    dataType
    organization {
      ...OrganizationFragment
    }
    version
    isSubjectToRegime
    isRegimeEnabled
    isControlParameter
    isDefaultControlParameter
    controlParameterBinding {
      ...ControlParameterBindingFragment
    }
    controlParameterBindings {
      ...ControlParameterBindingFragment
    }
    ignoresAssetDefaultControlParameters
    description
    isHidden
    isMuted
    isDerivedMeasure
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
    componentName
  }
}
Variables
{"ids": [SensorMeasure]}
Response
{
  "data": {
    "sensorMeasures": [
      {
        "children": [HierarchyNode],
        "id": 4,
        "insights": InsightResultSet,
        "isLeaf": true,
        "name": "xyz789",
        "displayName": "abc123",
        "canEdit": true,
        "canDelete": false,
        "canEditMetadata": false,
        "canEditAttributes": true,
        "canMove": false,
        "parent": HierarchyNode,
        "path": [HierarchyNode],
        "search": HierarchyNodeResultSet,
        "sensor": Sensor,
        "timeseries": TimeSeries,
        "rawData": TimeSeries,
        "type": "ASSET",
        "ontologyType": OntologyType,
        "validOntologyTypes": [OntologyType],
        "validUnits": [OntologyUnit],
        "scaling": ScalingProperties,
        "yAxisScaling": YAxisScalingProperties,
        "unit": Unit,
        "dataType": "BOOLEAN",
        "organization": Organization,
        "version": "abc123",
        "isSubjectToRegime": false,
        "isRegimeEnabled": true,
        "isControlParameter": true,
        "isDefaultControlParameter": true,
        "controlParameterBinding": ControlParameterBinding,
        "controlParameterBindings": [
          ControlParameterBinding
        ],
        "ignoresAssetDefaultControlParameters": false,
        "description": "abc123",
        "isHidden": true,
        "isMuted": true,
        "isDerivedMeasure": false,
        "validExternalMappingTypes": [
          ExternalMappingType
        ],
        "externalId": 4,
        "externalMappings": [ExternalMapping],
        "manualNotificationTriggers": [
          ManualNotificationTrigger
        ],
        "componentName": "abc123"
      }
    ]
  }
}

sublevel

Description

Returns a sublevel with a given ID

Response

Returns a SubLevel!

Arguments
Name Description
id - ID!

Example

Query
query sublevel($id: ID!) {
  sublevel(id: $id) {
    children {
      ...HierarchyNodeFragment
    }
    currentAttentionIndex {
      ...DataPointFragment
    }
    currentHealth {
      ...DataPointFragment
    }
    id
    insights {
      ...InsightResultSetFragment
    }
    isLeaf
    name
    displayName
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    kpiClassifications {
      ...FilteredKPIClassificationFragment
    }
    kpiStatistic {
      ...KPIStatisticFragment
    }
    kpiStatistics {
      ...KPIStatisticsFragment
    }
    organization {
      ...OrganizationFragment
    }
    version
    cases {
      ...CaseFileResultSetFragment
    }
    currentOpenCaseCount
    caseStatistics {
      ...CaseStatsOverviewFragment
    }
    downtimes {
      ...DowntimeResultSetFragment
    }
    downtimeStatistics {
      ...DowntimeStatsOverviewFragment
    }
    events {
      ...EventResultSetFragment
    }
    eventStatistics {
      ...EventStatsOverviewFragment
    }
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
    contractEnd
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "sublevel": {
      "children": [HierarchyNode],
      "currentAttentionIndex": DataPoint,
      "currentHealth": DataPoint,
      "id": 4,
      "insights": InsightResultSet,
      "isLeaf": true,
      "name": "abc123",
      "displayName": "abc123",
      "canEdit": false,
      "canDelete": false,
      "canEditMetadata": true,
      "canEditAttributes": false,
      "canMove": false,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "search": HierarchyNodeResultSet,
      "type": "ASSET",
      "ontologyType": OntologyType,
      "kpiClassifications": [FilteredKPIClassification],
      "kpiStatistic": KPIStatistic,
      "kpiStatistics": KPIStatistics,
      "organization": Organization,
      "version": "abc123",
      "cases": CaseFileResultSet,
      "currentOpenCaseCount": 123,
      "caseStatistics": CaseStatsOverview,
      "downtimes": DowntimeResultSet,
      "downtimeStatistics": DowntimeStatsOverview,
      "events": EventResultSet,
      "eventStatistics": EventStatsOverview,
      "validExternalMappingTypes": [ExternalMappingType],
      "externalId": 4,
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ],
      "contractEnd": "10:15:30Z"
    }
  }
}

user

Description

Returns the user with the given ID

Response

Returns a User!

Arguments
Name Description
id - ID!

Example

Query
query user($id: ID!) {
  user(id: $id) {
    id
    name
    email
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "user": {
      "id": "4",
      "name": "xyz789",
      "email": "xyz789"
    }
  }
}

Mutations

acceptOrganizationInvitation

Description

Accept an organization invitation

Arguments
Name Description
input - AcceptOrganizationInvitationInput!

Example

Query
mutation acceptOrganizationInvitation($input: AcceptOrganizationInvitationInput!) {
  acceptOrganizationInvitation(input: $input) {
    clientMutationId
  }
}
Variables
{"input": AcceptOrganizationInvitationInput}
Response
{
  "data": {
    "acceptOrganizationInvitation": {
      "clientMutationId": "xyz789"
    }
  }
}

acknowledgeCase

Description

Mark a case as acknowledged

Response

Returns an AcknowledgeCasePayload

Arguments
Name Description
input - AcknowledgeCaseInput!

Example

Query
mutation acknowledgeCase($input: AcknowledgeCaseInput!) {
  acknowledgeCase(input: $input) {
    clientMutationId
    case {
      ...CaseFileFragment
    }
  }
}
Variables
{"input": AcknowledgeCaseInput}
Response
{
  "data": {
    "acknowledgeCase": {
      "clientMutationId": "xyz789",
      "case": CaseFile
    }
  }
}

addNodeGroupToEnrolment

Description

Add a nodeGroup to an enrolment

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Response

Returns an AddNodeGroupToEnrolmentPayload

Arguments
Name Description
input - AddNodeGroupToEnrolmentInput!

Example

Query
mutation addNodeGroupToEnrolment($input: AddNodeGroupToEnrolmentInput!) {
  addNodeGroupToEnrolment(input: $input) {
    clientMutationId
    enrolment {
      ...EnrolmentFragment
    }
  }
}
Variables
{"input": AddNodeGroupToEnrolmentInput}
Response
{
  "data": {
    "addNodeGroupToEnrolment": {
      "clientMutationId": "abc123",
      "enrolment": Enrolment
    }
  }
}

addNodeGroupsToEnrolment

Description

Adds nodeGroups to an enrolment

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Response

Returns an AddNodeGroupsToEnrolmentPayload

Arguments
Name Description
input - AddNodeGroupsToEnrolmentInput!

Example

Query
mutation addNodeGroupsToEnrolment($input: AddNodeGroupsToEnrolmentInput!) {
  addNodeGroupsToEnrolment(input: $input) {
    clientMutationId
    enrolment {
      ...EnrolmentFragment
    }
  }
}
Variables
{"input": AddNodeGroupsToEnrolmentInput}
Response
{
  "data": {
    "addNodeGroupsToEnrolment": {
      "clientMutationId": "xyz789",
      "enrolment": Enrolment
    }
  }
}

addNodeToGroup

Description

Add a node to an identified group

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns an AddNodeToGroupPayload

Arguments
Name Description
input - AddNodeToGroupInput!

Example

Query
mutation addNodeToGroup($input: AddNodeToGroupInput!) {
  addNodeToGroup(input: $input) {
    clientMutationId
    nodeGroup {
      ...NodeGroupFragment
    }
  }
}
Variables
{"input": AddNodeToGroupInput}
Response
{
  "data": {
    "addNodeToGroup": {
      "clientMutationId": "abc123",
      "nodeGroup": NodeGroup
    }
  }
}

addNodesToGroup

Description

Adds nodes to an identified group

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns an AddNodesToGroupPayload

Arguments
Name Description
input - AddNodesToGroupInput!

Example

Query
mutation addNodesToGroup($input: AddNodesToGroupInput!) {
  addNodesToGroup(input: $input) {
    clientMutationId
    nodeGroup {
      ...NodeGroupFragment
    }
  }
}
Variables
{"input": AddNodesToGroupInput}
Response
{
  "data": {
    "addNodesToGroup": {
      "clientMutationId": "xyz789",
      "nodeGroup": NodeGroup
    }
  }
}

appendInsightsToCaseFile

Description

Append insight type elements to a casefile's collection

Response

Returns an AppendInsightsToCaseFilePayload

Arguments
Name Description
input - AppendInsightsToCaseFileInput!

Example

Query
mutation appendInsightsToCaseFile($input: AppendInsightsToCaseFileInput!) {
  appendInsightsToCaseFile(input: $input) {
    clientMutationId
    caseFile {
      ...CaseFileFragment
    }
  }
}
Variables
{"input": AppendInsightsToCaseFileInput}
Response
{
  "data": {
    "appendInsightsToCaseFile": {
      "clientMutationId": "abc123",
      "caseFile": CaseFile
    }
  }
}

applyConfigRulesToGroup

Description

Apply the current config rules to the nodes in the ConfigNodeGroup

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns an ApplyConfigRulesToGroupPayload

Arguments
Name Description
input - ApplyConfigRulesToGroupInput!

Example

Query
mutation applyConfigRulesToGroup($input: ApplyConfigRulesToGroupInput!) {
  applyConfigRulesToGroup(input: $input) {
    clientMutationId
  }
}
Variables
{"input": ApplyConfigRulesToGroupInput}
Response
{
  "data": {
    "applyConfigRulesToGroup": {
      "clientMutationId": "xyz789"
    }
  }
}

attachUnattachedSensors

Description

Attach unattached sensors to a single Asset

Response

Returns an AttachUnattachedSensorsPayload

Arguments
Name Description
input - AttachUnattachedSensorsInput!

Example

Query
mutation attachUnattachedSensors($input: AttachUnattachedSensorsInput!) {
  attachUnattachedSensors(input: $input) {
    clientMutationId
    asset {
      ...AssetFragment
    }
  }
}
Variables
{"input": AttachUnattachedSensorsInput}
Response
{
  "data": {
    "attachUnattachedSensors": {
      "clientMutationId": "abc123",
      "asset": Asset
    }
  }
}

cancelOrganizationInvitation

Description

Cancel an organization invitation

Arguments
Name Description
input - CancelOrganizationInvitationInput!

Example

Query
mutation cancelOrganizationInvitation($input: CancelOrganizationInvitationInput!) {
  cancelOrganizationInvitation(input: $input) {
    clientMutationId
  }
}
Variables
{"input": CancelOrganizationInvitationInput}
Response
{
  "data": {
    "cancelOrganizationInvitation": {
      "clientMutationId": "abc123"
    }
  }
}

closeCaseFile

Description

Closes a case file with some given feedback

Response

Returns a CloseCaseFilePayload

Arguments
Name Description
input - CloseCaseFileInput!

Example

Query
mutation closeCaseFile($input: CloseCaseFileInput!) {
  closeCaseFile(input: $input) {
    clientMutationId
    case {
      ...CaseFileFragment
    }
  }
}
Variables
{"input": CloseCaseFileInput}
Response
{
  "data": {
    "closeCaseFile": {
      "clientMutationId": "abc123",
      "case": CaseFile
    }
  }
}

copyAssetSettings

Description

Copy an asset's settings to similar assets

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.similar-assets-preview+json header to your request.

Response

Returns a CopyAssetSettingsPayload

Arguments
Name Description
input - CopyAssetSettingsInput!

Example

Query
mutation copyAssetSettings($input: CopyAssetSettingsInput!) {
  copyAssetSettings(input: $input) {
    clientMutationId
    successfulUpdates {
      ...AssetFragment
    }
    failedUpdates {
      ...AssetFragment
    }
  }
}
Variables
{"input": CopyAssetSettingsInput}
Response
{
  "data": {
    "copyAssetSettings": {
      "clientMutationId": "abc123",
      "successfulUpdates": [Asset],
      "failedUpdates": [Asset]
    }
  }
}

createDowntime

Description

Creates new downtime for a node

Response

Returns a CreateDowntimePayload!

Arguments
Name Description
input - CreateDowntimeInput!

Example

Query
mutation createDowntime($input: CreateDowntimeInput!) {
  createDowntime(input: $input) {
    clientMutationId
    downtime {
      ...DowntimeRuleFragment
    }
  }
}
Variables
{"input": CreateDowntimeInput}
Response
{
  "data": {
    "createDowntime": {
      "clientMutationId": "abc123",
      "downtime": DowntimeRule
    }
  }
}

createEnrolment

Description

Create a new enrolment

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Response

Returns a CreateEnrolmentPayload

Arguments
Name Description
input - CreateEnrolmentInput!

Example

Query
mutation createEnrolment($input: CreateEnrolmentInput!) {
  createEnrolment(input: $input) {
    clientMutationId
    enrolment {
      ...EnrolmentFragment
    }
  }
}
Variables
{"input": CreateEnrolmentInput}
Response
{
  "data": {
    "createEnrolment": {
      "clientMutationId": "xyz789",
      "enrolment": Enrolment
    }
  }
}

createFiveWhysAnalysis

Description

Create a new FiveWhysAnalysis for a point in the hierarchy

Response

Returns a CreateFiveWhysAnalysisPayload

Arguments
Name Description
input - CreateFiveWhysAnalysisInput!

Example

Query
mutation createFiveWhysAnalysis($input: CreateFiveWhysAnalysisInput!) {
  createFiveWhysAnalysis(input: $input) {
    clientMutationId
    fiveWhysAnalysis {
      ...FiveWhysAnalysisFragment
    }
  }
}
Variables
{"input": CreateFiveWhysAnalysisInput}
Response
{
  "data": {
    "createFiveWhysAnalysis": {
      "clientMutationId": "abc123",
      "fiveWhysAnalysis": FiveWhysAnalysis
    }
  }
}

createKPI

Description

Create a new KPI for a point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.annotation-creation-preview+json header to your request.

Response

Returns a CreateKPIPayload

Arguments
Name Description
input - CreateKPIInput!

Example

Query
mutation createKPI($input: CreateKPIInput!) {
  createKPI(input: $input) {
    clientMutationId
    kpi {
      ...KPIFragment
    }
  }
}
Variables
{"input": CreateKPIInput}
Response
{
  "data": {
    "createKPI": {
      "clientMutationId": "xyz789",
      "kpi": KPI
    }
  }
}

createMeasurement

Description

Create a new measurement for a point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.annotation-creation-preview+json header to your request.

Response

Returns a CreateMeasurementPayload

Arguments
Name Description
input - CreateMeasurementInput!

Example

Query
mutation createMeasurement($input: CreateMeasurementInput!) {
  createMeasurement(input: $input) {
    clientMutationId
    measurement {
      ...MeasurementFragment
    }
  }
}
Variables
{"input": CreateMeasurementInput}
Response
{
  "data": {
    "createMeasurement": {
      "clientMutationId": "xyz789",
      "measurement": Measurement
    }
  }
}

createNode

Description

Creates a new node in the hierarchy

Response

Returns a CreateNodePayload

Arguments
Name Description
input - CreateNodeInput!

Example

Query
mutation createNode($input: CreateNodeInput!) {
  createNode(input: $input) {
    clientMutationId
    node {
      ...HierarchyNodeFragment
    }
  }
}
Variables
{"input": CreateNodeInput}
Response
{
  "data": {
    "createNode": {
      "clientMutationId": "xyz789",
      "node": HierarchyNode
    }
  }
}

createNodeGroup

Description

Create a new node group

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns a CreateNodeGroupPayload

Arguments
Name Description
input - CreateNodeGroupInput!

Example

Query
mutation createNodeGroup($input: CreateNodeGroupInput!) {
  createNodeGroup(input: $input) {
    clientMutationId
    nodeGroup {
      ...NodeGroupFragment
    }
  }
}
Variables
{"input": CreateNodeGroupInput}
Response
{
  "data": {
    "createNodeGroup": {
      "clientMutationId": "abc123",
      "nodeGroup": NodeGroup
    }
  }
}

createNote

Description

Create a new note for a point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.annotation-creation-preview+json header to your request.

Response

Returns a CreateNotePayload

Arguments
Name Description
input - CreateNoteInput!

Example

Query
mutation createNote($input: CreateNoteInput!) {
  createNote(input: $input) {
    clientMutationId
    note {
      ...NoteEventFragment
    }
  }
}
Variables
{"input": CreateNoteInput}
Response
{
  "data": {
    "createNote": {
      "clientMutationId": "abc123",
      "note": NoteEvent
    }
  }
}

createOrganization

Description

Create a new organization

Response

Returns an Organization

Arguments
Name Description
input - CreateOrganizationInput!

Example

Query
mutation createOrganization($input: CreateOrganizationInput!) {
  createOrganization(input: $input) {
    children {
      ...HierarchyNodeFragment
    }
    currentAttentionIndex {
      ...DataPointFragment
    }
    currentHealth {
      ...DataPointFragment
    }
    id
    name
    displayName
    downtimes {
      ...DowntimeResultSetFragment
    }
    downtimeStatistics {
      ...DowntimeStatsOverviewFragment
    }
    locale
    timezone
    insights {
      ...InsightResultSetFragment
    }
    invitations {
      ...OrganizationInvitationResultSetFragment
    }
    isLeaf
    canEdit
    canDelete
    canEditMetadata
    canEditAttributes
    canMove
    parent {
      ...HierarchyNodeFragment
    }
    path {
      ...HierarchyNodeFragment
    }
    search {
      ...HierarchyNodeResultSetFragment
    }
    type
    ontologyType {
      ...OntologyTypeFragment
    }
    kpiClassifications {
      ...FilteredKPIClassificationFragment
    }
    kpiStatistic {
      ...KPIStatisticFragment
    }
    kpiStatistics {
      ...KPIStatisticsFragment
    }
    organization {
      ...OrganizationFragment
    }
    unattachedSensors {
      ...UnattachedSensorFragment
    }
    unattachedSensorByMappingId {
      ...UnattachedSensorFragment
    }
    version
    cases {
      ...CaseFileResultSetFragment
    }
    currentOpenCaseCount
    caseStatistics {
      ...CaseStatsOverviewFragment
    }
    searchAllNodeGroups {
      ...NodeGroupResultSetFragment
    }
    events {
      ...EventResultSetFragment
    }
    eventStatistics {
      ...EventStatsOverviewFragment
    }
    validExternalMappingTypes {
      ...ExternalMappingTypeFragment
    }
    externalId
    externalMappings {
      ...ExternalMappingFragment
    }
    manualNotificationTriggers {
      ...ManualNotificationTriggerFragment
    }
    contractEnd
  }
}
Variables
{"input": CreateOrganizationInput}
Response
{
  "data": {
    "createOrganization": {
      "children": [HierarchyNode],
      "currentAttentionIndex": DataPoint,
      "currentHealth": DataPoint,
      "id": 4,
      "name": "abc123",
      "displayName": "xyz789",
      "downtimes": DowntimeResultSet,
      "downtimeStatistics": DowntimeStatsOverview,
      "locale": "abc123",
      "timezone": "abc123",
      "insights": InsightResultSet,
      "invitations": OrganizationInvitationResultSet,
      "isLeaf": true,
      "canEdit": true,
      "canDelete": true,
      "canEditMetadata": false,
      "canEditAttributes": false,
      "canMove": true,
      "parent": HierarchyNode,
      "path": [HierarchyNode],
      "search": HierarchyNodeResultSet,
      "type": "ASSET",
      "ontologyType": OntologyType,
      "kpiClassifications": [FilteredKPIClassification],
      "kpiStatistic": KPIStatistic,
      "kpiStatistics": KPIStatistics,
      "organization": Organization,
      "unattachedSensors": [UnattachedSensor],
      "unattachedSensorByMappingId": UnattachedSensor,
      "version": "abc123",
      "cases": CaseFileResultSet,
      "currentOpenCaseCount": 987,
      "caseStatistics": CaseStatsOverview,
      "searchAllNodeGroups": NodeGroupResultSet,
      "events": EventResultSet,
      "eventStatistics": EventStatsOverview,
      "validExternalMappingTypes": [ExternalMappingType],
      "externalId": "4",
      "externalMappings": [ExternalMapping],
      "manualNotificationTriggers": [
        ManualNotificationTrigger
      ],
      "contractEnd": "10:15:30Z"
    }
  }
}

createOrganizationInvitation

Description

Create a new organization invitation

Arguments
Name Description
input - CreateOrganizationInvitationInput!

Example

Query
mutation createOrganizationInvitation($input: CreateOrganizationInvitationInput!) {
  createOrganizationInvitation(input: $input) {
    clientMutationId
    organizationInvitation {
      ...OrganizationInvitationFragment
    }
    code
  }
}
Variables
{"input": CreateOrganizationInvitationInput}
Response
{
  "data": {
    "createOrganizationInvitation": {
      "clientMutationId": "abc123",
      "organizationInvitation": OrganizationInvitation,
      "code": "abc123"
    }
  }
}

createSensor

Description

Creates a new sensor

Response

Returns a CreateSensorPayload

Arguments
Name Description
input - CreateSensorInput!

Example

Query
mutation createSensor($input: CreateSensorInput!) {
  createSensor(input: $input) {
    clientMutationId
    sensor {
      ...UnattachedSensorFragment
    }
  }
}
Variables
{"input": CreateSensorInput}
Response
{
  "data": {
    "createSensor": {
      "clientMutationId": "abc123",
      "sensor": UnattachedSensor
    }
  }
}

createWorkEvent

Description

Create a new work event for a point in the hierarchy

Response

Returns a CreateWorkEventPayload

Arguments
Name Description
input - CreateWorkEventInput!

Example

Query
mutation createWorkEvent($input: CreateWorkEventInput!) {
  createWorkEvent(input: $input) {
    clientMutationId
    workEvent {
      ...WorkEventFragment
    }
  }
}
Variables
{"input": CreateWorkEventInput}
Response
{
  "data": {
    "createWorkEvent": {
      "clientMutationId": "xyz789",
      "workEvent": WorkEvent
    }
  }
}

deleteCaseAcknowledgement

Description

Remove an existing acknowledgement from a case

Arguments
Name Description
input - DeleteCaseAcknowledgementInput!

Example

Query
mutation deleteCaseAcknowledgement($input: DeleteCaseAcknowledgementInput!) {
  deleteCaseAcknowledgement(input: $input) {
    clientMutationId
    case {
      ...CaseFileFragment
    }
  }
}
Variables
{"input": DeleteCaseAcknowledgementInput}
Response
{
  "data": {
    "deleteCaseAcknowledgement": {
      "clientMutationId": "xyz789",
      "case": CaseFile
    }
  }
}

deleteDowntime

Description

Deletes the downtime for a node

Response

Returns a DeleteDowntimePayload!

Arguments
Name Description
input - DeleteDowntimeInput!

Example

Query
mutation deleteDowntime($input: DeleteDowntimeInput!) {
  deleteDowntime(input: $input) {
    clientMutationId
  }
}
Variables
{"input": DeleteDowntimeInput}
Response
{
  "data": {
    "deleteDowntime": {
      "clientMutationId": "abc123"
    }
  }
}

deleteEnrolment

Description

Delete an enrolment

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Response

Returns a DeleteEnrolmentPayload

Arguments
Name Description
input - DeleteEnrolmentInput!

Example

Query
mutation deleteEnrolment($input: DeleteEnrolmentInput!) {
  deleteEnrolment(input: $input) {
    clientMutationId
  }
}
Variables
{"input": DeleteEnrolmentInput}
Response
{
  "data": {
    "deleteEnrolment": {
      "clientMutationId": "abc123"
    }
  }
}

deleteExternalMapping

Description

Deletes a mapping from an external system to a senseye node

Response

Returns a DeleteExternalMappingPayload!

Arguments
Name Description
input - DeleteExternalMappingInput!

Example

Query
mutation deleteExternalMapping($input: DeleteExternalMappingInput!) {
  deleteExternalMapping(input: $input) {
    clientMutationId
  }
}
Variables
{"input": DeleteExternalMappingInput}
Response
{
  "data": {
    "deleteExternalMapping": {
      "clientMutationId": "xyz789"
    }
  }
}

deleteNode

Description

Deletes a node from the hierarchy

Response

Returns a DeleteNodePayload

Arguments
Name Description
input - DeleteNodeInput!

Example

Query
mutation deleteNode($input: DeleteNodeInput!) {
  deleteNode(input: $input) {
    clientMutationId
    version
  }
}
Variables
{"input": DeleteNodeInput}
Response
{
  "data": {
    "deleteNode": {
      "clientMutationId": "abc123",
      "version": "abc123"
    }
  }
}

deleteNodeGroup

Description

Delete an identified node group

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns a DeleteNodeGroupPayload

Arguments
Name Description
input - DeleteNodeGroupInput!

Example

Query
mutation deleteNodeGroup($input: DeleteNodeGroupInput!) {
  deleteNodeGroup(input: $input) {
    clientMutationId
  }
}
Variables
{"input": DeleteNodeGroupInput}
Response
{
  "data": {
    "deleteNodeGroup": {
      "clientMutationId": "xyz789"
    }
  }
}

deleteSensor

Description

Delete an existing sensor

Response

Returns a DeleteSensorPayload

Arguments
Name Description
input - DeleteSensorInput!

Example

Query
mutation deleteSensor($input: DeleteSensorInput!) {
  deleteSensor(input: $input) {
    clientMutationId
  }
}
Variables
{"input": DeleteSensorInput}
Response
{
  "data": {
    "deleteSensor": {
      "clientMutationId": "xyz789"
    }
  }
}

disableRegimeOnMeasure

Description

Disable a measure from using the asset's regime when performing analytics

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

Response

Returns a DisableRegimeOnMeasurePayload

Arguments
Name Description
input - DisableRegimeOnMeasureInput!

Example

Query
mutation disableRegimeOnMeasure($input: DisableRegimeOnMeasureInput!) {
  disableRegimeOnMeasure(input: $input) {
    clientMutationId
  }
}
Variables
{"input": DisableRegimeOnMeasureInput}
Response
{
  "data": {
    "disableRegimeOnMeasure": {
      "clientMutationId": "abc123"
    }
  }
}

editEnrolment

Description

Edit an enrolment

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Response

Returns an EditEnrolmentPayload

Arguments
Name Description
input - EditEnrolmentInput!

Example

Query
mutation editEnrolment($input: EditEnrolmentInput!) {
  editEnrolment(input: $input) {
    clientMutationId
    enrolment {
      ...EnrolmentFragment
    }
  }
}
Variables
{"input": EditEnrolmentInput}
Response
{
  "data": {
    "editEnrolment": {
      "clientMutationId": "xyz789",
      "enrolment": Enrolment
    }
  }
}

editNodeGroup

Description

Edit an identified node group

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns an EditNodeGroupPayload

Arguments
Name Description
input - EditNodeGroupInput!

Example

Query
mutation editNodeGroup($input: EditNodeGroupInput!) {
  editNodeGroup(input: $input) {
    clientMutationId
    nodeGroup {
      ...NodeGroupFragment
    }
  }
}
Variables
{"input": EditNodeGroupInput}
Response
{
  "data": {
    "editNodeGroup": {
      "clientMutationId": "abc123",
      "nodeGroup": NodeGroup
    }
  }
}

enableRegimeOnMeasure

Description

Enable a measure to use the asset's regime when performing analytics. By default, measures are enabled if the asset consumes a regime calendar

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

Response

Returns an EnableRegimeOnMeasurePayload

Arguments
Name Description
input - EnableRegimeOnMeasureInput!

Example

Query
mutation enableRegimeOnMeasure($input: EnableRegimeOnMeasureInput!) {
  enableRegimeOnMeasure(input: $input) {
    clientMutationId
  }
}
Variables
{"input": EnableRegimeOnMeasureInput}
Response
{
  "data": {
    "enableRegimeOnMeasure": {
      "clientMutationId": "xyz789"
    }
  }
}

moveNode

Description

Relocates an existing node within the hierarchy

Response

Returns a MoveNodePayload

Arguments
Name Description
input - MoveNodeInput!

Example

Query
mutation moveNode($input: MoveNodeInput!) {
  moveNode(input: $input) {
    clientMutationId
    node {
      ...HierarchyNodeFragment
    }
  }
}
Variables
{"input": MoveNodeInput}
Response
{
  "data": {
    "moveNode": {
      "clientMutationId": "xyz789",
      "node": HierarchyNode
    }
  }
}

removeInsightFromCaseFile

Description

Remove an insight type element from a casefile's collection

Arguments
Name Description
input - RemoveInsightFromCaseFileInput!

Example

Query
mutation removeInsightFromCaseFile($input: RemoveInsightFromCaseFileInput!) {
  removeInsightFromCaseFile(input: $input) {
    clientMutationId
    caseFile {
      ...CaseFileFragment
    }
  }
}
Variables
{"input": RemoveInsightFromCaseFileInput}
Response
{
  "data": {
    "removeInsightFromCaseFile": {
      "clientMutationId": "abc123",
      "caseFile": CaseFile
    }
  }
}

removeNodeFromGroup

Description

Remove a node from an identified group

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns a RemoveNodeFromGroupPayload

Arguments
Name Description
input - RemoveNodeFromGroupInput!

Example

Query
mutation removeNodeFromGroup($input: RemoveNodeFromGroupInput!) {
  removeNodeFromGroup(input: $input) {
    clientMutationId
    nodeGroup {
      ...NodeGroupFragment
    }
  }
}
Variables
{"input": RemoveNodeFromGroupInput}
Response
{
  "data": {
    "removeNodeFromGroup": {
      "clientMutationId": "abc123",
      "nodeGroup": NodeGroup
    }
  }
}

removeNodeGroupFromEnrolment

Description

Remove a nodeGroup from an enrolment

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Arguments
Name Description
input - RemoveNodeGroupFromEnrolmentInput!

Example

Query
mutation removeNodeGroupFromEnrolment($input: RemoveNodeGroupFromEnrolmentInput!) {
  removeNodeGroupFromEnrolment(input: $input) {
    clientMutationId
    enrolment {
      ...EnrolmentFragment
    }
  }
}
Variables
{"input": RemoveNodeGroupFromEnrolmentInput}
Response
{
  "data": {
    "removeNodeGroupFromEnrolment": {
      "clientMutationId": "xyz789",
      "enrolment": Enrolment
    }
  }
}

removeNodeGroupsFromEnrolment

Description

Remove nodeGroups from an enrolment

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.enrolments-preview+json header to your request.

Arguments
Name Description
input - RemoveNodeGroupsFromEnrolmentInput!

Example

Query
mutation removeNodeGroupsFromEnrolment($input: RemoveNodeGroupsFromEnrolmentInput!) {
  removeNodeGroupsFromEnrolment(input: $input) {
    clientMutationId
    enrolment {
      ...EnrolmentFragment
    }
  }
}
Variables
{"input": RemoveNodeGroupsFromEnrolmentInput}
Response
{
  "data": {
    "removeNodeGroupsFromEnrolment": {
      "clientMutationId": "abc123",
      "enrolment": Enrolment
    }
  }
}

removeNodesFromGroup

Description

Remove nodes from an identified group

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns a RemoveNodesFromGroupPayload

Arguments
Name Description
input - RemoveNodesFromGroupInput!

Example

Query
mutation removeNodesFromGroup($input: RemoveNodesFromGroupInput!) {
  removeNodesFromGroup(input: $input) {
    clientMutationId
    nodeGroup {
      ...NodeGroupFragment
    }
  }
}
Variables
{"input": RemoveNodesFromGroupInput}
Response
{
  "data": {
    "removeNodesFromGroup": {
      "clientMutationId": "abc123",
      "nodeGroup": NodeGroup
    }
  }
}

reorderCaseFileElements

Description

Reorder a casefile's elements. This could allow a client to list elements in order of importance or in order of convenience by grouping related elements next to each other.

Response

Returns a ReorderCaseFileElementsPayload

Arguments
Name Description
input - ReorderCaseFileElementsInput!

Example

Query
mutation reorderCaseFileElements($input: ReorderCaseFileElementsInput!) {
  reorderCaseFileElements(input: $input) {
    clientMutationId
    caseFile {
      ...CaseFileFragment
    }
  }
}
Variables
{"input": ReorderCaseFileElementsInput}
Response
{
  "data": {
    "reorderCaseFileElements": {
      "clientMutationId": "xyz789",
      "caseFile": CaseFile
    }
  }
}

saveConfigRulesToGroup

Description

Save the current config rules to the ConfigNodeGroup

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Response

Returns a SaveConfigRulesToGroupPayload

Arguments
Name Description
input - SaveConfigRulesToGroupInput!

Example

Query
mutation saveConfigRulesToGroup($input: SaveConfigRulesToGroupInput!) {
  saveConfigRulesToGroup(input: $input) {
    clientMutationId
    nodeGroup {
      ...NodeGroupFragment
    }
  }
}
Variables
{"input": SaveConfigRulesToGroupInput}
Response
{
  "data": {
    "saveConfigRulesToGroup": {
      "clientMutationId": "xyz789",
      "nodeGroup": NodeGroup
    }
  }
}

sendOrganizationInvitation

Description

Send an organization invitation.

Arguments
Name Description
input - SendOrganizationInvitationInput!

Example

Query
mutation sendOrganizationInvitation($input: SendOrganizationInvitationInput!) {
  sendOrganizationInvitation(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SendOrganizationInvitationInput}
Response
{
  "data": {
    "sendOrganizationInvitation": {
      "clientMutationId": "xyz789"
    }
  }
}

setActiveOrganization

Description

Sets the active organization for the current user. Note that you will need to obtain a new token to switch to the new organization.

Response

Returns a SetActiveOrganizationPayload

Arguments
Name Description
input - SetActiveOrganizationInput!

Example

Query
mutation setActiveOrganization($input: SetActiveOrganizationInput!) {
  setActiveOrganization(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SetActiveOrganizationInput}
Response
{
  "data": {
    "setActiveOrganization": {
      "clientMutationId": "xyz789"
    }
  }
}

setConsumedRegimeCalendar

Description

Set a regime calendar on an asset i.e. associate an asset (the consumer) with an asset that produces a regime calendar

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

Arguments
Name Description
input - SetConsumedRegimeCalendarInput!

Example

Query
mutation setConsumedRegimeCalendar($input: SetConsumedRegimeCalendarInput!) {
  setConsumedRegimeCalendar(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SetConsumedRegimeCalendarInput}
Response
{
  "data": {
    "setConsumedRegimeCalendar": {
      "clientMutationId": "abc123"
    }
  }
}

setControlParameterMappings

setMeasureControlParameters should be used in place of this mutation to allow for multiple control parameters.
Description

Sets or unsets one or more control parameter mappings between measures

Arguments
Name Description
input - SetControlParameterMappingsInput!

Example

Query
mutation setControlParameterMappings($input: SetControlParameterMappingsInput!) {
  setControlParameterMappings(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SetControlParameterMappingsInput}
Response
{
  "data": {
    "setControlParameterMappings": {
      "clientMutationId": "xyz789"
    }
  }
}

setDefaultControlParameter

setDefaultControlParameters should be used as it allows assets to have multiple default control parameters.
Description

Sets the default control parameter for an asset

Arguments
Name Description
input - SetDefaultControlParameterInput!

Example

Query
mutation setDefaultControlParameter($input: SetDefaultControlParameterInput!) {
  setDefaultControlParameter(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SetDefaultControlParameterInput}
Response
{
  "data": {
    "setDefaultControlParameter": {
      "clientMutationId": "abc123"
    }
  }
}

setDefaultControlParameters

Description

Sets the default control parameters for an asset

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR319-control-params-preview+json header to your request.

Arguments
Name Description
input - SetDefaultControlParametersInput!

Example

Query
mutation setDefaultControlParameters($input: SetDefaultControlParametersInput!) {
  setDefaultControlParameters(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SetDefaultControlParametersInput}
Response
{
  "data": {
    "setDefaultControlParameters": {
      "clientMutationId": "xyz789"
    }
  }
}

setExternalId

Description

Set an external id for a client artefact to the Senseye equivalent

Response

Returns a SetExternalIdPayload

Arguments
Name Description
input - SetExternalIdInput!

Example

Query
mutation setExternalId($input: SetExternalIdInput!) {
  setExternalId(input: $input) {
    clientMutationId
    externalId
    type
    id
  }
}
Variables
{"input": SetExternalIdInput}
Response
{
  "data": {
    "setExternalId": {
      "clientMutationId": "abc123",
      "externalId": "xyz789",
      "type": "NODE",
      "id": "4"
    }
  }
}

setExternalMappings

Description

Sets mappings from senseye nodes to external systems

Response

Returns a SetExternalMappingsPayload!

Arguments
Name Description
input - SetExternalMappingsInput!

Example

Query
mutation setExternalMappings($input: SetExternalMappingsInput!) {
  setExternalMappings(input: $input) {
    clientMutationId
    externalMappings {
      ...ExternalMappingFragment
    }
  }
}
Variables
{"input": SetExternalMappingsInput}
Response
{
  "data": {
    "setExternalMappings": {
      "clientMutationId": "xyz789",
      "externalMappings": [ExternalMapping]
    }
  }
}

setMeasureControlParameters

Description

Updates control parameter settings for one or more measures

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR319-control-params-preview+json header to your request.

Arguments
Name Description
input - SetMeasureControlParametersInput!

Example

Query
mutation setMeasureControlParameters($input: SetMeasureControlParametersInput!) {
  setMeasureControlParameters(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SetMeasureControlParametersInput}
Response
{
  "data": {
    "setMeasureControlParameters": {
      "clientMutationId": "xyz789"
    }
  }
}

setMeasureMuted

Description

Sets a measure's muted property to be true or false. The property governs whether Senseye algorithms run over the measure's values

Response

Returns a SetMeasureMutedPayload

Arguments
Name Description
input - SetMeasureMutedInput!

Example

Query
mutation setMeasureMuted($input: SetMeasureMutedInput!) {
  setMeasureMuted(input: $input) {
    clientMutationId
    measureId
    muted
  }
}
Variables
{"input": SetMeasureMutedInput}
Response
{
  "data": {
    "setMeasureMuted": {
      "clientMutationId": "xyz789",
      "measureId": "4",
      "muted": false
    }
  }
}

setRegimeIdentifier

Description

Sets a regime identifier on a given sensor-measure for an asset

Response

Returns a SetRegimeIdentifierPayload

Arguments
Name Description
input - SetRegimeIdentifierInput!

Example

Query
mutation setRegimeIdentifier($input: SetRegimeIdentifierInput!) {
  setRegimeIdentifier(input: $input) {
    clientMutationId
  }
}
Variables
{"input": SetRegimeIdentifierInput}
Response
{
  "data": {
    "setRegimeIdentifier": {
      "clientMutationId": "xyz789"
    }
  }
}

storeSensorMeasureData

Description

Stores data for a sensor measure. Note there is a limit of 15000 data points that can be stored in one mutation

Response

Returns a StoreSensorMeasureDataPayload

Arguments
Name Description
input - StoreSensorMeasureDataInput!

Example

Query
mutation storeSensorMeasureData($input: StoreSensorMeasureDataInput!) {
  storeSensorMeasureData(input: $input) {
    clientMutationId
  }
}
Variables
{"input": StoreSensorMeasureDataInput}
Response
{
  "data": {
    "storeSensorMeasureData": {
      "clientMutationId": "abc123"
    }
  }
}

unattachAttachedSensors

Description

Unattach attached sensors from a single Asset

Response

Returns an UnattachAttachedSensorsPayload

Arguments
Name Description
input - UnattachAttachedSensorsInput!

Example

Query
mutation unattachAttachedSensors($input: UnattachAttachedSensorsInput!) {
  unattachAttachedSensors(input: $input) {
    clientMutationId
    asset {
      ...AssetFragment
    }
  }
}
Variables
{"input": UnattachAttachedSensorsInput}
Response
{
  "data": {
    "unattachAttachedSensors": {
      "clientMutationId": "xyz789",
      "asset": Asset
    }
  }
}

unsetConsumedRegimeCalendar

Description

Unset an asset's regime calendar i.e. stop an asset consuming another asset's calendar

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

Arguments
Name Description
input - UnsetConsumedRegimeCalendarInput!

Example

Query
mutation unsetConsumedRegimeCalendar($input: UnsetConsumedRegimeCalendarInput!) {
  unsetConsumedRegimeCalendar(input: $input) {
    clientMutationId
  }
}
Variables
{"input": UnsetConsumedRegimeCalendarInput}
Response
{
  "data": {
    "unsetConsumedRegimeCalendar": {
      "clientMutationId": "abc123"
    }
  }
}

updateAsset

Description

Update an asset

Response

Returns an UpdateAssetPayload

Arguments
Name Description
input - UpdateAssetInput!

Example

Query
mutation updateAsset($input: UpdateAssetInput!) {
  updateAsset(input: $input) {
    clientMutationId
    asset {
      ...AssetFragment
    }
  }
}
Variables
{"input": UpdateAssetInput}
Response
{
  "data": {
    "updateAsset": {
      "clientMutationId": "abc123",
      "asset": Asset
    }
  }
}

updateDowntime

Description

Updates the downtime for a node

Response

Returns an UpdateDowntimePayload!

Arguments
Name Description
input - UpdateDowntimeInput!

Example

Query
mutation updateDowntime($input: UpdateDowntimeInput!) {
  updateDowntime(input: $input) {
    clientMutationId
    downtime {
      ...DowntimeRuleFragment
    }
  }
}
Variables
{"input": UpdateDowntimeInput}
Response
{
  "data": {
    "updateDowntime": {
      "clientMutationId": "abc123",
      "downtime": DowntimeRule
    }
  }
}

updateMeasure

Description

Updates a measure's properties

Response

Returns an UpdateMeasurePayload

Arguments
Name Description
input - UpdateMeasureInput!

Example

Query
mutation updateMeasure($input: UpdateMeasureInput!) {
  updateMeasure(input: $input) {
    clientMutationId
    measure {
      ...MeasureFragment
    }
  }
}
Variables
{"input": UpdateMeasureInput}
Response
{
  "data": {
    "updateMeasure": {
      "clientMutationId": "xyz789",
      "measure": Measure
    }
  }
}

updateSensor

Description

Updates a sensor's properties

Response

Returns an UpdateSensorPayload

Arguments
Name Description
input - UpdateSensorInput!

Example

Query
mutation updateSensor($input: UpdateSensorInput!) {
  updateSensor(input: $input) {
    clientMutationId
    sensor {
      ...SensorFragment
    }
  }
}
Variables
{"input": UpdateSensorInput}
Response
{
  "data": {
    "updateSensor": {
      "clientMutationId": "xyz789",
      "sensor": Sensor
    }
  }
}

updateSubLevel

Description

Update a sublevel

Response

Returns an UpdateSubLevelPayload

Arguments
Name Description
input - UpdateSubLevelInput!

Example

Query
mutation updateSubLevel($input: UpdateSubLevelInput!) {
  updateSubLevel(input: $input) {
    clientMutationId
    sublevel {
      ...SubLevelFragment
    }
  }
}
Variables
{"input": UpdateSubLevelInput}
Response
{
  "data": {
    "updateSubLevel": {
      "clientMutationId": "xyz789",
      "sublevel": SubLevel
    }
  }
}

Types

AcceptOrganizationInvitationInput

Description

Input type of AcceptOrganizationInvitation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The internal identifier used to identify the invitation
code - String! The code associated with this invitation
password - String The password to use for the new user
Example
{}

AcceptOrganizationInvitationPayload

Description

Return type of AcceptOrganizationInvitation

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

AcknowledgeCaseInput

Description

Input type for acknowledgeCase

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The ID of the case
Example
{}

AcknowledgeCasePayload

Description

Return type of acknowledgeCase

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
case - CaseFile! The updated Case
Example
{
  "clientMutationId": "abc123",
  "case": CaseFile
}

Acknowledgement

Description

An acknowledgement records who acknowledged something and when

Fields
Field Name Description
timestamp - Time! The time that the acknowledgement was made
user - User! The user who made the acknowledgement
Example
{
  "timestamp": "10:15:30Z",
  "user": User
}

AddNodeGroupToEnrolmentInput

Description

Input type of AddNodeGroupToEnrolment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The nodeId of the enrolment to be updated
nodeGroup - ID! The id of the nodeGroup to be added
Example
{}

AddNodeGroupToEnrolmentPayload

Description

Return type of AddNodeGroupToEnrolment

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
enrolment - Enrolment The updated enrolment
Example
{
  "clientMutationId": "xyz789",
  "enrolment": Enrolment
}

AddNodeGroupsToEnrolmentInput

Description

Input type of AddNodeGroupsToEnrolment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The nodeId of the enrolment to be updated
nodeGroups - [ID!]! The id of the nodeGroups to be added
Example
{}

AddNodeGroupsToEnrolmentPayload

Description

Return type of AddNodeGroupsToEnrolment

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
enrolment - Enrolment The updated enrolment
Example
{
  "clientMutationId": "xyz789",
  "enrolment": Enrolment
}

AddNodeToGroupInput

Description

Input type of AddNodeToGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group to be updated
node - ID! The id of the node to be added
Example
{}

AddNodeToGroupPayload

Description

Return type of AddNodeToGroup

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeGroup - NodeGroup The updated node group
Example
{
  "clientMutationId": "abc123",
  "nodeGroup": NodeGroup
}

AddNodesToGroupInput

Description

Input type of AddNodesToGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group to be updated
nodes - [ID!]! The ids of the nodes to be added
Example
{}

AddNodesToGroupPayload

Description

Return type of AddNodesToGroup

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeGroup - NodeGroup The updated node group
Example
{
  "clientMutationId": "xyz789",
  "nodeGroup": NodeGroup
}

Analysis

Description

Analysis. Under development. It shows how an analysis capability applies to an asset

Fields
Field Name Description
name - AnalysisName! The name of the analysis
status - AnalysisStatus! The status of the analysis applied to this asset
Possible Types
Analysis Types

AnomalyAnalysis

Example
{"name": "ANOMALY", "status": "DISABLED"}

AnalysisName

Description

AnalysisName. Under development. Senseye provides several different analytical capabilities. Each capability has a name.

Values
Enum Value Description

ANOMALY

Finds outliers
Example
{}

AnalysisStatus

Description

AnalysisStatus. Under development. Senseye provides several different analytical capabilities. Each capability has a status.

Values
Enum Value Description

DISABLED

The capability has been disabled for the asset

ENABLED

The capability is enabled for the asset

ERRORED

Either the capability has errored, or gathering the status has errored

LEARNING

The capability requires more data to produce results

UNKNOWN

There is insufficient metadata to determine the status
Example
{}

AnomalyAnalysis

Description

AnomalyAnalysis. Under development. It shows the anomaly analysis capability

Fields
Field Name Description
name - AnalysisName! ANOMALY
status - AnalysisStatus! this asset's anomaly status
Example
{"name": "ANOMALY", "status": "DISABLED"}

AnomalyInsight

Description

An insight raised due to anomalies

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": 4,
  "isOpen": true,
  "longDescription": "abc123",
  "shortDescription": "xyz789",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": false,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

AppendInsightsToCaseFileInput

Description

Input type for appendInsightToCaseFile

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
caseFileId - ID! The id of the case
reason - String! Why the change is being made (freeform)
elements - [CaseFileInsightElement!]! The elements to be appended
Example
{}

AppendInsightsToCaseFilePayload

Description

Return type of appendInsightsToCaseFile

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
caseFile - CaseFile! The updated Case
Example
{
  "clientMutationId": "xyz789",
  "caseFile": CaseFile
}

ApplyConfigRulesToGroupInput

Description

Input type of ApplyConfigRulesToGroupInput

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group for which rules should be applied
Example
{}

ApplyConfigRulesToGroupPayload

Description

Return type of ApplyConfigRulesToGroupPayload

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "xyz789"}

Asset

Description

An asset typically represents a physical machine, and aggregates measure data from one or more sensors.

Fields
Field Name Description
vendor - String The vendor of this asset
model - String The model of the asset
criticality - AssetCriticality! The criticality of the asset
description - String The description of the asset
cases - CaseFileResultSet! Returns cases given some query parameters. To get cases that were open at any time between x and y, set startTime to x and endTime to y
Arguments
offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

openedAfter - Time

Return cases that were opened since this time

closedBefore - Time

Return cases that were closed before this time

startTime - Time

Return cases that were either closed after this time, or are still open

endTime - Time

Return cases that were opened before this time

latestManualNotificationEventAfter - Time

Return cases where the latest manual notification event is after this time

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-341-manual-triggering-preview+json header to your request.

currentOpenCaseCount - Int!

Gets the current number of open cases associated with the asset subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

caseStatistics - CaseStatsOverview!

Retrieve case file statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the case statistics

children - [HierarchyNode!]! The children of this asset
currentAttentionIndex - DataPoint The current attention index of a node, taken to be the most recent attention value for an asset. Attention is calculated as the maximum of the current node's attention and that of the children below it. Attention values are between 0, indicating no attention is needed, and 1, indicating that some attention is required.
currentCase - CaseFile Returns the currently open case for an asset
currentHealth - DataPoint The current health of a node, taken to be the most recent health value for an asset. Health is calculated as the minimum of the current node's health and that of the children below it. Health values are between 0, indicating poor health, and 1, indicating good health. This has been superseded by currentAttentionIndex and is flagged for removal.
dataTransmissionStatus - DataTransmissionStatus! Shows the current status of data being received for an asset NO_RECENT_DATA - Scheduled Downtime is not currently activated and no data has been received recently OFFLINE - Scheduled Downtime is currently activated ONLINE - Scheduled Downtime is not currently activated and data has been received recently
dataTransmissionTimes - DataTransmissionTimes! Returns the information about data received on sensors belonging to the asset.
downtimes - DowntimeResultSet!

Periods when the asset had scheduled downtime recorded

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.new-attention-chart-preview+json header to your request.

Arguments
start - Time!

Find downtime after this point

end - Time

Find downtime up to this point, defaults to now if not specified

downtimeStatistics - DowntimeStatsOverview!

Retrieve downtime avoided statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the downtime statistics

events - EventResultSet! Returns events matching arguments that are associated with the current asset
Arguments
recent - Boolean

Only include events that are deemed recent

type - EventType

The type of events to search for, if neither this nor 'types' are provided, assume all supported types

types - [EventType!]

Types of events to search for, if neither this nor 'type' are provided, assume all supported types

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

startTime - Time

Find all events after this time. Use in conjunction with parameter 'endTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

endTime - Time

Find all events ending before this time. Use in conjunction with parameter 'startTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

eventStatistics - EventStatsOverview!

Retrieve work event statistics aggregated over all nodes, including the current asset, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the event statistics

externalId - ID The external ID of the asset
health - HealthTimeSeries! Retrieve the asset health datapoints (ranging from 0 to 1, where 1 is good health) for this asset (up to and not including the end). At most 1 month of health data can be retrieved in one call. This has been superseded by attentionIndex and is flagged for removal.
Arguments
startTime - Time

The time from which health will be retrieved. If not present, the earliest time available is used.

endTime - Time

The time up to which health will be retrieved. If not present, the most recent time available is used.

attentionIndex - AttentionIndexTimeSeries! Retrieve the attention index datapoints (ranging from 0 to 1, where 0 means no attention is warranted) for this asset (up to and not including the end). At most 1 month of attention index data can be retrieved in one call.
Arguments
startTime - Time

The time from which attention index will be retrieved. If not present, the earliest time available is used.

endTime - Time

The time up to which attention index will be retrieved. If not present, the most recent time available is used.

id - ID! The internal ID used to identify the asset
insights - InsightResultSet! Returns the insights for a given subtree, for a given time window.
Arguments
startTime - Time!

startTime is the time from which to query

endTime - Time

endTime is end of the query window. If omitted, it is set to the current time

isLeaf - Boolean! Whether this node is a leaf (i.e. has no children)
isInScheduledDowntime - Boolean! Whether the asset is currently in a period of Scheduled Downtime
name - String! The readable name of the asset
displayName - String! The potentially aliased name of this asset (will otherwise be the same as the name property)
canEdit - Boolean! Indicates whether the current user can edit this asset
canDelete - Boolean! Indicates whether the current user can delete this asset
canEditMetadata - Boolean! Indicates whether the current user can edit the metadata on this asset
canEditAttributes - Boolean! Indicates whether the current user can edit the attributes on this asset
canMove - Boolean! Indicates whether the current user can move this node within the hierarchy
parent - HierarchyNode The parent of this asset
path - [HierarchyNode!]! The path from the root to (but not including) the asset
regimes - RegimeResultSet! Retrieve the regimes which this asset has been in for a time duration (up to and not including the end). At most 1 month of regimes can be retrieved in one call.
Arguments
startTime - Time

The time from which regimes will be retrieved. If not present, the earliest time available is used.

endTime - Time

The time up to which regimes will be retrieved. If not present, the most recent time available is used.

regimeIdentifier - Measure Returns the regime identifier configured for the given asset, or null if it does not exist
search - HierarchyNodeResultSet! Retrieve nodes from below this point in the hierarchy
Arguments
type - HierarchyNodeType

The type of node to search for; exclude to search across all node types

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

order - [NodeSort!]

How to order the result set. Sort priority is based on the positioning of each NodeSort within the array. Currently only available when searching for nodes of type ASSET.

filter - [NodeFilter!]

How to filter the result set. Currently only available when searching for nodes of type ASSET.

sendingDataConfidenceLevel - Float! A confidence range, 1.0 reflects high confidence, 0.0 means low confidence about whether recent data is available due to new functionality, this now returns 1.0 (no data missing) or 0.0 (data missing) rather than a range of values, and is flagged for removal.
sensors - [Sensor!]! Returns the sensors associated with the asset
type - HierarchyNodeType! The type of this node
ontologyType - OntologyType The ontology type of this node
validOntologyTypes - [OntologyType] Valid ontology types that may be set to this asset
kpiClassifications - [FilteredKPIClassification!]! Possible KPI classifications for this node
kpiStatistic - KPIStatistic!

Retrieve KPI statistics for a particular classification + unit pair, aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
classificationId - ID!

The identifier for the classification

unitId - ID!

The identifier for the unit

period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

kpiStatistics - KPIStatistics!

Retrieve KPI statistics aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

measurementClassifications - [FilteredMeasurementClassification!]! Possible measurement classifications for this node
anomalyAnalysis - Analysis! anomaly analysis status
nodeGroups - NodeGroupResultSet!

The node groups this asset belongs to

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

failureModes - [FailureMode!]! Possible failure modes for an asset
workActivities - [WorkActivity!]! Work activities that can be carried out on an asset
predictedNeedForIntervention - PredictedNeedForIntervention!

Retrieves the latest predicted probabilities that intervention will be required on an asset in the future, with prediction values truncated at/between the given startTime and/or endTime if not null, or gives all the prediction dates otherwise.

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.predict-intervention-preview+json header to your request.

Arguments
startTime - Time
endTime - Time
organization - Organization! The organization that owns this node
version - String! The version of the hierarchy
similarAssets - SimilarAssetResultSet!

Retrieves a list of similar assets. Two assets are similar if and only if they have the same ontology type and the same named measures in their sensors.

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.similar-assets-preview+json header to your request.

Arguments
subtree - ID

Limits the search to assets in this subtree, otherwise all assets in the organization are considered.

consumesRegimeCalendar - RegimeCalendar

Returns the regime calendar that this asset consumes

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

producesRegimeCalendar - RegimeCalendar

Returns the regime calendar that this asset produces

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

defaultControlParameterMeasure - Measure Returns the default control parameter measure for this asset or null if one doesn't exist defaultControlParameterMeasures should be used as it allows assets to have multiple default control parameters.
defaultControlParameterMeasures - [Measure]

Returns the default control parameter measures for this asset

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR319-control-params-preview+json header to your request.

watchedStatus - WatchedStatus An asset can have many watch events, the last watch event defines whether the asset is watched or not
validExternalMappingTypes - [ExternalMappingType] Valid external mapping types that may be applied to this node
externalMappings - [ExternalMapping] All external mappings for this node
manualNotificationTriggers - [ManualNotificationTrigger!] Whether this node and its descendents requires manual intervention to notify external systems of changes
Example
{
  "vendor": "xyz789",
  "model": "xyz789",
  "criticality": "HIGH",
  "description": "abc123",
  "cases": CaseFileResultSet,
  "currentOpenCaseCount": 123,
  "caseStatistics": CaseStatsOverview,
  "children": [HierarchyNode],
  "currentAttentionIndex": DataPoint,
  "currentCase": CaseFile,
  "currentHealth": DataPoint,
  "dataTransmissionStatus": "NO_RECENT_DATA",
  "dataTransmissionTimes": DataTransmissionTimes,
  "downtimes": DowntimeResultSet,
  "downtimeStatistics": DowntimeStatsOverview,
  "events": EventResultSet,
  "eventStatistics": EventStatsOverview,
  "externalId": "4",
  "health": HealthTimeSeries,
  "attentionIndex": AttentionIndexTimeSeries,
  "id": 4,
  "insights": InsightResultSet,
  "isLeaf": true,
  "isInScheduledDowntime": false,
  "name": "abc123",
  "displayName": "abc123",
  "canEdit": true,
  "canDelete": false,
  "canEditMetadata": false,
  "canEditAttributes": true,
  "canMove": false,
  "parent": HierarchyNode,
  "path": [HierarchyNode],
  "regimes": RegimeResultSet,
  "regimeIdentifier": Measure,
  "search": HierarchyNodeResultSet,
  "sendingDataConfidenceLevel": 987.65,
  "sensors": [Sensor],
  "type": "ASSET",
  "ontologyType": OntologyType,
  "validOntologyTypes": [OntologyType],
  "kpiClassifications": [FilteredKPIClassification],
  "kpiStatistic": KPIStatistic,
  "kpiStatistics": KPIStatistics,
  "measurementClassifications": [
    FilteredMeasurementClassification
  ],
  "anomalyAnalysis": Analysis,
  "nodeGroups": NodeGroupResultSet,
  "failureModes": [FailureMode],
  "workActivities": [WorkActivity],
  "predictedNeedForIntervention": PredictedNeedForIntervention,
  "organization": Organization,
  "version": "xyz789",
  "similarAssets": SimilarAssetResultSet,
  "consumesRegimeCalendar": RegimeCalendar,
  "producesRegimeCalendar": RegimeCalendar,
  "defaultControlParameterMeasure": Measure,
  "defaultControlParameterMeasures": [Measure],
  "watchedStatus": WatchedStatus,
  "validExternalMappingTypes": [ExternalMappingType],
  "externalMappings": [ExternalMapping],
  "manualNotificationTriggers": [
    ManualNotificationTrigger
  ]
}

AssetCriticality

Description

How critical an asset is

Values
Enum Value Description

HIGH

High criticality (critical asset - no backup)

LOW

Low criticality (back-up asset available)

MEDIUM

Medium criticality (back-up asset or repair possible)
Example
{}

AssetCriticalityConfigAction

Description

upsert or delete an asset criticality

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
criticality - StringMetadataPatch! the criticality, values as strings '0.25' means low, '0.5' means medium, '0.75' means high
Example
{
  "target": "ASSET_CRITICALITY",
  "criticality": StringMetadataPatch
}

AssetCriticalityConfigActionInput

Description

input for upsert or delete an asset criticality

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = ASSET_CRITICALITY
criticality - StringMetadataPatchInput! change the criticality, values as strings '0.25' means low, '0.5' means medium, '0.75' means high
Example
{}

AssetDescriptionConfigAction

Description

upsert or delete an asset ontology type

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
description - StringMetadataPatch! the description
Example
{
  "target": "ASSET_CRITICALITY",
  "description": StringMetadataPatch
}

AssetDescriptionConfigActionInput

Description

input for upsert or delete an asset description

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = ASSET_DESCRIPTION
description - StringMetadataPatchInput! change the description
Example
{}

AssetModelConfigAction

Description

upsert or delete an asset model

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
model - StringMetadataPatch! the model
Example
{
  "target": "ASSET_CRITICALITY",
  "model": StringMetadataPatch
}

AssetModelConfigActionInput

Description

input for upsert or delete an asset model

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = ASSET_MODEL
model - StringMetadataPatchInput! change the model
Example
{}

AssetOntologyTypeConfigAction

Description

upsert or delete an asset ontology type

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
ontologyType - StringMetadataPatch! the ontology type
Example
{
  "target": "ASSET_CRITICALITY",
  "ontologyType": StringMetadataPatch
}

AssetOntologyTypeConfigActionInput

Description

input for upsert or delete an asset ontology type

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = ASSET_ONTOLOGY_TYPE
ontologyType - OntologyTypeMetadataPatchInput! change the ontology type
Example
{}

AssetStatisticsFilter

Description

A collection of filters when querying statistics related to asset-level nodes

Fields
Input Field Description
onWatchlist - Boolean Filters statistics to target assets on a watchlist
hasOpenCase - Boolean Filters statistics to target assets with an open case
Example
{}

AssetVendorConfigAction

Description

upsert or delete an asset vendor

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
vendor - StringMetadataPatch! the vendor
Example
{
  "target": "ASSET_CRITICALITY",
  "vendor": StringMetadataPatch
}

AssetVendorConfigActionInput

Description

input for upsert or delete an asset vendor

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = ASSET_VENDOR
vendor - StringMetadataPatchInput! change the vendor
Example
{}

AttachUnattachedSensorsInput

Description

Input type for attachUnattachedSensors

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
assetID - ID! Unattached sensors will become attached to the this asset
hierarchyVersion - ID The version of the hierarchy being updated; this property is deprecated - updates will affect the current hierarchy
unattachedSensors - [ID!]! The ids of unattachedSensors that are to become attached to the asset
Example
{}

AttachUnattachedSensorsPayload

Description

Return type of attachUnattachedSensor

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
asset - Asset! The updated Asset
Example
{
  "clientMutationId": "abc123",
  "asset": Asset
}

AttentionIndexTimeSeries

Description

A time series for attention index data

Fields
Field Name Description
results - [DataPoint!]! The list of attention index datapoints for an asset.
Example
{"results": [DataPoint]}

Boolean

Description

The Boolean scalar type represents true or false.

Example
{}

BooleanMetadataPatch

Description

Applies a Boolean to a property

Fields
Field Name Description
operation - MetadataPatchOperationType! upsert or delete
value - Boolean if upsert, the new property value
Example
{"operation": "DELETE", "value": true}

BooleanMetadataPatchInput

Description

change a boolean value

Fields
Input Field Description
operation - MetadataPatchOperationType! upsert or delete
value - Boolean if upsert, the value to apply
Example
{}

CancelOrganizationInvitationInput

Description

Input type of CancelOrganizationInvitation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The internal identifier used to identify the invitation
Example
{}

CancelOrganizationInvitationPayload

Description

Return type of CancelOrganizationInvitation

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

CaseFeedback

Description

Feedback provided when closing a case

Fields
Field Name Description
satisfactionRating - SatisfactionRating! The satisfaction rating given to a casefile
cause - Cause! The behaviour that caused a casefile
reasonableToOpen - Boolean! Given what was known at the time, was it reasonable to open this case?
otherComments - String Anything else we should know?
Example
{
  "satisfactionRating": "EXCELLENT_VERY_HELPFUL",
  "cause": "NO_REASON_FOR_CASE_NORMAL_BEHAVIOUR",
  "reasonableToOpen": true,
  "otherComments": "xyz789"
}

CaseFeedbackForm

Description

Feedback form related to a casefile

Fields
Input Field Description
satisfactionRating - SatisfactionRating! Rate your satisfaction?
cause - Cause! Help us understand the behaviour that caused it
reasonableToOpen - Boolean! Given what was known at the time, was it reasonable to open this case?
otherComments - String Anything else we should know?
Example
{}

CaseFile

Description

A case file raised against an asset.

Fields
Field Name Description
acknowledgement - Acknowledgement An acknowledgement can be attached to a case
asset - Asset! The asset that the case belongs to
closedAt - Time When the case was closed, if it has been closed
description - String The description of the case
feedback - CaseFeedback Feedback that was collected when a case is closed
id - ID! The ID of the case
isOpen - Boolean! Is the case currently open?
openedAt - Time! When the case was opened
primaryTrigger - CaseTriggerType The type of trigger that initial raised the case
triggers - [CaseTriggerType!] A list of triggers for this case sorted by relevance
closedBy - User The user that closed the case, if it is closed
content - Collection The evidence content of the case
failureModes - [FailureMode!] A list of failure modes that may be indicated by this case
recommendedActions - [String!] A list of suggested actions as a result of this case
latestManualNotificationEvent - ManualNotificationEvent The latest manual notification event. This is used to determine whether a CMMS should record this case
Possible Types
CaseFile Types

GenericCaseFile

Example
{
  "acknowledgement": Acknowledgement,
  "asset": Asset,
  "closedAt": "10:15:30Z",
  "description": "abc123",
  "feedback": CaseFeedback,
  "id": 4,
  "isOpen": false,
  "openedAt": "10:15:30Z",
  "primaryTrigger": "ANOMALY",
  "triggers": ["ANOMALY"],
  "closedBy": User,
  "content": Collection,
  "failureModes": [FailureMode],
  "recommendedActions": ["xyz789"],
  "latestManualNotificationEvent": ManualNotificationEvent
}

CaseFileInsightElement

Description

Input type for insight elements being appended to the case file's collection

Fields
Input Field Description
insightId - String! The id of the insight
version - Int! The current version number should be recorded for information purposes
Example
{}

CaseFileResultSet

Description

A set of case files

Fields
Field Name Description
results - [CaseFile!]! A list of case files
paginationDetails - PaginationDetails! Details about the page that has been returned
Example
{
  "results": [CaseFile],
  "paginationDetails": PaginationDetails
}

CaseStats

Description

Statistics about case files for assets under a hierarchy node over an aggregation window

Fields
Field Name Description
startTime - Time! The start time of the aggregation window
endTime - Time! The end time of the aggregation window
count - Int! The number of targeted cases found over the aggregation window
averageTimeHours - Float The average number of hours taken to perform some action on the cases over the aggregation window (eg: time to acknowledge, time to close, etc.)
Example
{
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "count": 123,
  "averageTimeHours": 123.45
}

CaseStatsOverview

Description

An overview of statistics about case files under a hierarchy node aggregated into rounded time windows denoted by period and within an overall query time range between startTime and endTime (eg: monthly stats over the last year).

Fields
Field Name Description
period - StatsPeriod! The period over which stats are aggregated
startTime - Time! The rounded start time of the overall query window
endTime - Time! The rounded end time of the overall query window
openedStats - [CaseStats!]! The stats about cases that were opened over the time range
ackedStats - [CaseStats!]! The stats about cases that were acknowledged over the time range
closedStats - [CaseStats!]! The stats about cases that were closed over a time range
Example
{
  "period": "DAILY",
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "openedStats": [CaseStats],
  "ackedStats": [CaseStats],
  "closedStats": [CaseStats]
}

CaseTriggerType

Description

Types of triggers of a case

Values
Enum Value Description

ANOMALY

Case triggered by an anomaly

ASSET_HEALTH

Case triggered by asset health which is a legacy system that was decommissioned October 2020

DEGRADATION

Case triggered by a degradation

FAILURE_MATCH

Case triggered by a failure match

FORECAST_VIOLATION

Case triggered by a forecast violation

THRESHOLD_VIOLATION

Case triggered by a threshold violation

TREND

Case triggered by a trend

UNKNOWN

Case triggered by an unknown analysis
Example
{}

Cause

Description

The behaviour that caused a casefile

Values
Enum Value Description

NO_REASON_FOR_CASE_NORMAL_BEHAVIOUR

No reason for case - normal behaviour

POTENTIAL_BREAKDOWN_AVOIDED

Potential breakdown avoided

PROCESS_CHANGE

Caused by process change

RECENT_MAINTENANCE

Caused by recent maintenance

SENSOR_OR_DATA_COLLECTION_PROBLEM

Sensor or data collection problem

SHOWING_CONCERN

Showing concern

UNPLANNED_DOWNTIME_OR_STOPPAGE

Unplanned downtime or stoppage
Example
{}

CloseCaseFileInput

Description

Input type for closeCaseFile

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the case
feedbackForm - CaseFeedbackForm! Feedback form for the case
Example
{}

CloseCaseFilePayload

Description

Return type of closeCaseFile

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
case - CaseFile! The updated Case
Example
{
  "clientMutationId": "abc123",
  "case": CaseFile
}

Collection

Description

A collection is an ordered set of elements.

Fields
Field Name Description
elements - [CollectionElement!]! The elements contained in this collection. By default, the response will not include elements that were removed, but if includeRemoved is true, they will be included. Removed elements will have their 'removed' property true.
Arguments
includeRemoved - Boolean
Example
{"elements": [CollectionElement]}

CollectionElement

Description

An individual element in the collection.

Fields
Field Name Description
id - ID! The identifier for this collection element. Note: this is different from the content identifier. It is used when removing or reordering this element.
removed - Boolean! When this element is removed from its collection, this property is true.
content - CollectionElementContent! Returns the actual content of this element - e.g. an insight. By default, this method will return the latest version of that content. If the version argument specifies, it will return the version that was originally added to this collection - where applicable.
Example
{
  "id": "4",
  "removed": true,
  "content": AnomalyInsight
}

CollectionElementContent

Example
{}

CompareNodeGroup

Description

A collection of nodes grouped together

Fields
Field Name Description
id - ID! The internal identifier used to identify a node group
label - String! The human readable name for a group, each label must be unique for a organisation
organization - Organization! The organisation to which the group belongs
creator - User! The user responsible for creating the group
nodes - [HierarchyNode!]! A list of nodes this group encompasses
type - NodeGroupType! The type of the node group
priority - Int The priority of the rule set for this configuration group, or null if no rules exist for it
rules - [ConfigRule!]! rules that are applied
canEditRules - Boolean! Indicates whether the current user can edit the rules associated with a configuration group
canEdit - Boolean! Indicates whether the current user can edit this node group's label
canDelete - Boolean! Indicates whether the current user can delete this node group
canRemoveNode - Boolean! Indicates whether the current user can remove a member node from this node group
canWritePermissions - Boolean! Indicates whether the current user can add/remove node group permissions for other users.
Example
{
  "id": "4",
  "label": "xyz789",
  "organization": Organization,
  "creator": User,
  "nodes": [HierarchyNode],
  "type": "COMPARE",
  "priority": 987,
  "rules": [ConfigRule],
  "canEditRules": false,
  "canEdit": false,
  "canDelete": false,
  "canRemoveNode": true,
  "canWritePermissions": false
}

ConditionData

Description

Data that can be used to evaluate if a condition is violated

Types
Union Types

ConditionFeatureData

Example
{}

ConditionFeatureData

Description

A binding from a named measure feature to a set of data points pertinent to a condition

Fields
Field Name Description
source - FeatureSource! The measure feature period that provided the time series
forecast - FeatureTimeSeries An optional forecast that the data was derived from. If period is not specified, then the period used in the source field is used. Otherwise, the forecast of the specified period is returned. In the event of the specified forecast being available, the returned time series will be nil.
Arguments
period - FeaturePeriod
Example
{
  "source": FeatureSource,
  "forecast": FeatureTimeSeries
}

ConditionViolationInsight

Description

An insight raised due to a condition violation

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight. If a specific version was requested using a conjoined ID:number value, this field will contain the conjoined value to simplify caching. When the most recent version was requested using a standard ID, this field will only contain the standard ID.
version - Int! The zero-based revision number of this data
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in data where the violation was detected
probability - Float The likelihood of the violation occurring
isForecast - Boolean! Whether this insight is a forecast
conditionData - [ConditionData!]! The data that led to the condition being violated
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": 4,
  "version": 987,
  "isOpen": false,
  "longDescription": "abc123",
  "shortDescription": "abc123",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "probability": 987.65,
  "isForecast": true,
  "conditionData": [ConditionFeatureData],
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

Confidence

Description

A confidence bound

Fields
Field Name Description
interval - Float! The confidence interval (between 0 and 1)
upper - Float! The upper limit of the confidence interval
lower - Float! The lower limit of the confidence interval
Example
{"interval": 987.65, "upper": 123.45, "lower": 987.65}

ConfigAction

ConfigActionInput

Description

ConfigActionInput collects any input actions that are needed

Fields
Input Field Description
assetDescription - AssetDescriptionConfigActionInput amend asset description
assetOntologyType - AssetOntologyTypeConfigActionInput amend asset ontology type
assetCriticality - AssetCriticalityConfigActionInput amend asset criticality
assetModel - AssetModelConfigActionInput amend asset model
assetVendor - AssetVendorConfigActionInput amend asset vendor
measureAddThresholds - MeasureAddThresholdsConfigActionInput adds thresholds to any measures that match the node group's condition predicate
measureDeleteThresholds - MeasureDeleteThresholdsConfigActionInput deletes thresholds with the specified name attached to any measures that match the node group's condition predicate
measureDisplayName - MeasureDisplayNameConfigActionInput amend measure display name
measureMuted - MeasureMutedConfigActionInput amend measure muted
measureYAxisScaling - MeasureYAxisScalingConfigActionInput amend measure y axis
measureHideChart - MeasureHideChartConfigActionInput hide the measure chart
measureComponent - MeasureComponentConfigActionInput amend measure component
measureDescription - MeasureDescriptionConfigActionInput amend measure description
measureScaling - MeasureScalingConfigActionInput amend measure scaling
measureType - MeasureTypeConfigActionInput amend measure type (includes units)
sensorDescription - SensorDescriptionConfigActionInput amend sensor description
sensorVibration - SensorVibrationConfigActionInput amend sensor vibration properties
Example
{}

ConfigActionTargetType

Description

Properties that can be set

Values
Enum Value Description

ASSET_CRITICALITY

criticality, high medium, low

ASSET_DESCRIPTION

the description of the asset

ASSET_MODEL

the model of the asset

ASSET_ONTOLOGY_TYPE

the asset ontology

ASSET_VENDOR

the vendor (or make) of the asset

MEASURE_ADD_THRESHOLDS

adds thresholds to any measures that match the node group's condition predicate

MEASURE_COMPONENT

measure component

MEASURE_DELETE_THRESHOLDS

deletes thresholds with the specified name attached to any measures that match the node group's condition predicate

MEASURE_DESCRIPTION

measure description

MEASURE_DISPLAY_NAME

the display name

MEASURE_HIDE_CHART

whether to hide a measure chart

MEASURE_MUTED

is the measure muted

MEASURE_SCALING

measure scaling

MEASURE_TYPE

the measure type

MEASURE_Y_AXIS_SCALING

y axis scaling affects chart rendering

SENSOR_DESCRIPTION

sensor description

SENSOR_VIBRATION

sensor vibration
Example
{}

ConfigCondition

Description

ConfigCondition shows a predicate

Fields
Field Name Description
target - ConfigConditionTargetType! the type of entity the predicate relates to
comparator - ConfigConditionComparatorType! how to match the entity
value - String! what to match an entity against
Example
{
  "target": "ASSET_NAME",
  "comparator": "CONTAINS",
  "value": "abc123"
}

ConfigConditionComparatorType

Description

ConfigConditionComparatorType how to match a predicate

Values
Enum Value Description

CONTAINS

match if the target entity contains a substring regardless of case

CONTAINS_CASE

match if the target entity contains a substring, case sensitive

DOES_NOT_CONTAIN

match if the target entity does not contain a substring regardless of case

DOES_NOT_CONTAIN_CASE

match if the target entity does not contain a substring, case sensitive

DOES_NOT_END_WITH

match if the target entity does not end with a substring regardless of case

DOES_NOT_END_WITH_CASE

match if the target entity does not end with a substring, case sensitive

DOES_NOT_MATCH_REGEX

match if the target entity does not match the regex

DOES_NOT_START_WITH

match if the target entity dose not start with a substring regardless of case

DOES_NOT_START_WITH_CASE

match if the target entity does not start with a substring, case sensitive

ENDS_WITH

match if the target entity ends with a substring regardless of case

ENDS_WITH_CASE

match if the target entity ends with a substring, case sensitive

REGEX

match according to a regex

STARTS_WITH

match if the target entity starts with a substring regardless of case

STARTS_WITH_CASE

match if the target entity starts with a substring, case sensitive
Example
{}

ConfigConditionInput

Description

ConfigConditionInput sets a predicate

Fields
Input Field Description
target - ConfigConditionTargetType! the type of entity the predicate relates to
comparator - ConfigConditionComparatorType! how to match the entity
value - String! what to match an entity against
Example
{}

ConfigConditionTargetType

Description

ConfigConditionTargetType the target of the predicate

Values
Enum Value Description

ASSET_NAME

asset

MEASURE_NAME

measure

SENSOR_NAME

sensor
Example
{}

ConfigNodeGroup

Description

A collection of nodes grouped together

Fields
Field Name Description
id - ID! The internal identifier used to identify a node group
label - String! The human readable name for a group, each label must be unique for a organisation
organization - Organization! The organisation to which the group belongs
creator - User! The user responsible for creating the group
nodes - [HierarchyNode!]! A list of nodes this group encompasses
type - NodeGroupType! The type of the node group
priority - Int The priority of the rule set for this configuration group, or null if no rules exist for it
rules - [ConfigRule!]! rules that are applied
canEditRules - Boolean! Indicates whether the current user can edit the rules associated with a configuration group
canEdit - Boolean! Indicates whether the current user can edit this node group's label
canDelete - Boolean! Indicates whether the current user can delete this node group
canRemoveNode - Boolean! Indicates whether the current user can remove a member node from this node group
canWritePermissions - Boolean! Indicates whether the current user can add/remove node group permissions for other users.
Example
{
  "id": "4",
  "label": "xyz789",
  "organization": Organization,
  "creator": User,
  "nodes": [HierarchyNode],
  "type": "COMPARE",
  "priority": 123,
  "rules": [ConfigRule],
  "canEditRules": false,
  "canEdit": true,
  "canDelete": false,
  "canRemoveNode": true,
  "canWritePermissions": false
}

ConfigRule

Description

ConfigRule display conditions which are a predicate and action representing what gets changed

Fields
Field Name Description
conditions - [ConfigCondition!]! the predicate
actions - [ConfigAction!]! the action to perform
Example
{
  "conditions": [ConfigCondition],
  "actions": [ConfigAction]
}

ConfigRuleInput

Description

ConfigRuleInput set conditions which are a predicate and action representing what gets changed

Fields
Input Field Description
conditions - [ConfigConditionInput!]! the predicate
action - ConfigActionInput the action to perform
Example
{}

ControlParameterBinding

Description

The control parameter measure and a flag indicating the binding is a default

Fields
Field Name Description
measure - Measure! The control parameter measure
isDefaultBinding - Boolean! Binding can be the default, established by adding metadata to the parent asset, or not implying another mechanism i.e. measure to measure mapping has been used
Example
{"measure": Measure, "isDefaultBinding": false}

ControlParameterMappingInput

Description

A mapping between pairs of measures indicating a control parameter relationship

Fields
Input Field Description
targetMeasureId - ID! The ID of the measure affected by the control parameter specified in the SourceId
sourceMeasureId - ID The ID of the control parameter measure. A null value states that the TargetId is not affected by any control parameters
Example
{}

CopyAssetSettingsInput

Description

Input type for copying an asset's settings to similar assets

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
sourceAssetId - ID! The id of the source asset
targetAssetIds - [ID!]! Ids of target assets
Example
{}

CopyAssetSettingsPayload

Description

Return type of CopyAssetSettings

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
successfulUpdates - [Asset!]! Assets successfully updated
failedUpdates - [Asset!]! Assets that could not be updated
Example
{
  "clientMutationId": "xyz789",
  "successfulUpdates": [Asset],
  "failedUpdates": [Asset]
}

CreateDowntimeInput

Description

Input type used to create downtime

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The id of the node on which to create or edit downtime
name - String! The name of the downtime rule
start - Time! When the scheduled downtime started
end - Time! When the scheduled downtime ended
repeat - DowntimeRepeatInput Optional repeat specification for the downtime
Example
{}

CreateDowntimePayload

Description

Return type of createDowntime

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
downtime - DowntimeRule! The resultant downtime from the create action
Example
{
  "clientMutationId": "abc123",
  "downtime": DowntimeRule
}

CreateEnrolmentInput

Description

Input type of CreateEnrolment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The nodeId of the enrolment to be created
nodeGroups - [ID!]! A list of nodegroup ids this enrolment encompasses
Example
{}

CreateEnrolmentPayload

Description

Return type of CreateEnrolment

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
enrolment - Enrolment The new enrolment
Example
{
  "clientMutationId": "xyz789",
  "enrolment": Enrolment
}

CreateFiveWhysAnalysisInput

Description

Input type of CreateFiveWhysAnalysis

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
eventTime - Time! The time at which the KPI applies
hierarchyNodeID - ID The point in the hierarchy where the note should be created
externalId - ID The external ID of an asset for the note
problem - String The problem being analyzed
whys - [String]! The determined causes of the problem
Example
{}

CreateFiveWhysAnalysisPayload

Description

Return type of CreateFiveWhysAnalysis

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
fiveWhysAnalysis - FiveWhysAnalysis The new Five Whys Analysis event
Example
{
  "clientMutationId": "abc123",
  "fiveWhysAnalysis": FiveWhysAnalysis
}

CreateKPIInput

Description

Input type of CreateKPI

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
eventTime - Time! The time at which the KPI applies
classificationId - ID! The classification of the KPI
unitId - ID! The unit of the KPI
hierarchyNodeID - ID The point in the hierarchy where the KPI should be created. Either a hierarchy node or an external ID are required.
externalId - ID The external ID of an asset for the KPI. Either a hierarchy node or an external ID are required.
message - String! A description of the KPI
value - Float! The value of the KPI
Example
{}

CreateKPIPayload

Description

Return type of CreateKPI

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
kpi - KPI The new KPI
Example
{
  "clientMutationId": "xyz789",
  "kpi": KPI
}

CreateMeasurementInput

Description

Input type of CreateMeasurement

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
eventTime - Time! The time at which the measurement applies
classificationId - ID! The classification of the measurement
unitId - ID! The unit of the measurement
hierarchyNodeID - ID The point in the hierarchy where the measurement should be created
externalId - ID The external ID of an asset for the measurement
message - String! A description of the measurement
value - Float! The value of the measurement
Example
{}

CreateMeasurementPayload

Description

Return type of CreateMeasurement

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
measurement - Measurement The new measurement
Example
{
  "clientMutationId": "abc123",
  "measurement": Measurement
}

CreateNodeGroupInput

Description

Input type of CreateNodeGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
label - String! The human readable name for a group, each label must be unique for a organisation
nodes - [ID!]! A list of node ids this group encompasses
type - NodeGroupType The type of the node group, defaults to COMPARE
Example
{}

CreateNodeGroupPayload

Description

Return type of CreateNodeGroup

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeGroup - NodeGroup The new node group
Example
{
  "clientMutationId": "xyz789",
  "nodeGroup": NodeGroup
}

CreateNodeInput

Description

Input type of createNode

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
version - String! The current version of the hierarchy
parent - ID! The parent of this node
name - String! The readable name of the node
type - HierarchyNodeType! The type of this node
ontologyType - ID The ontology type of the node. Only used for creating asset nodes - unused for other node types.
Example
{}

CreateNodePayload

Description

Return type of createNode

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
node - HierarchyNode! The newly created node
Example
{
  "clientMutationId": "xyz789",
  "node": HierarchyNode
}

CreateNoteInput

Description

Input type of CreateNoteInput

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
eventTime - Time! The time at which the KPI applies
hierarchyNodeID - ID The point in the hierarchy where the note should be created
externalId - ID The external ID of an asset for the note
message - String! A description of the note
Example
{}

CreateNotePayload

Description

Return type of CreateNote

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
note - NoteEvent The new note
Example
{
  "clientMutationId": "abc123",
  "note": NoteEvent
}

CreateOrganizationInput

Description

Input type of createOrganization

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
name - String! A readable name for the organization
locale - String The default locale for this organization. Must be a BCP-47 canonical value (e.g. "pt-BR" for Portuguese in Brazil). Defaults to "en-GB" if unknown.
timezone - String The default timezone for this organization. Must be a IANA canonical name (e.g. "Europe/Madrid"). Defaults to "UTC" if not provided.
Example
{}

CreateOrganizationInvitationInput

Description

Input type of CreateOrganizationInvitation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
name - String! The name of the user who was invited
email - String! The email address of the user who was invited
isAdministrator - Boolean! Whether the invited user will be an administrator
locale - String! The locale for the new user
message - String! The extra information sent to the user in the invitation
groups - [ID!] The IDs of the groups that the user is being invited to
Example
{}

CreateOrganizationInvitationPayload

Description

Return type of CreateOrganizationInvitation

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
organizationInvitation - OrganizationInvitation The new organization invitation
code - String! The code associated with this invitation. Only available at creation!
Example
{
  "clientMutationId": "abc123",
  "organizationInvitation": OrganizationInvitation,
  "code": "xyz789"
}

CreateSensorInput

Description

Input type of Sensor

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
hubType - SensorHubType! The type of hub the sensor belongs to
name - String The name of the sensor
description - String The description of the sensor
mappingId - String A unique identifier that the client uses to refer to a sensor. This identifier can be used in the mutation storeSensorMeasureData
Example
{}

CreateSensorPayload

Description

Return type of CreateSensor

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
sensor - UnattachedSensor! The newly created sensor
Example
{
  "clientMutationId": "abc123",
  "sensor": UnattachedSensor
}

CreateWorkEventInput

Description

Input type of CreateWorkEvent

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
downtimeAvoided - Int The amount of downtime in minutes avoided due to the work
eventTime - Time! When the event occurred
failureMode - ID The failure which led to the work being carried out
hierarchyNodeID - ID The point in the hierarchy where the KPI should be created. Either a hierarchy node or an external ID are required.
externalID - ID The external ID of an asset for the KPI. Either a hierarchy node or an external ID are required.
isRoutine - Boolean! Whether the work was done as routine maintenance
message - String! A description of the work
timeSpent - Int The amount of time in minutes spent on the work
workActivity - ID! The work activity that was carried out
isRelearning - Boolean Whether to trigger relearning
promptedBySenseye - Boolean Whether this work was prompted by Senseye
Example
{}

CreateWorkEventPayload

Description

Return type of CreateWorkEvent

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
workEvent - WorkEvent The new work event
Example
{
  "clientMutationId": "abc123",
  "workEvent": WorkEvent
}

CustomUnit

Description

A custom unit of measurement.

Fields
Field Name Description
name - String The name of the unit (e.g. Pressure)
symbol - String The symbol of the unit (e.g. Pa)
Example
{
  "name": "abc123",
  "symbol": "abc123"
}

DataBinding

Description

A binding from a data source to a value

Fields
Field Name Description
source - DataSource! The data source which has a value
Possible Types
DataBinding Types

ConditionFeatureData

Example
{"source": FeatureSource}

DataPoint

Description

A value observed at a particular timestamp

Fields
Field Name Description
timestamp - Time! The time at which the data point was observed
value - Float! The floating point value of the data point
confidences - [Confidence!] The confidence bounds of this data point
Example
{
  "timestamp": "10:15:30Z",
  "value": 987.65,
  "confidences": [Confidence]
}

DataPointInput

Description

Input type for a data point value n.b. only one value of each type may exist at each point in time

Fields
Input Field Description
measureName - String The measure
floatValue - Float The float value of the data point
stringValue - String The string value of the data point
booleanValue - Boolean The boolean value of the data point
timestamp - Time! The timestamp of the data point
Example
{}

DataSource

Description

Some data that can be provided to an expression

Types
Union Types

FeatureSource

RawSource

Example
{}

DataTransmissionStatus

Description

DataTransmissionStatus. Under development. Denotes whether Senseye is receiving and processing data being sent. The definitions below use the term recently which depends on context and the sophistication of the algorithm analysing data transmission patterns

Values
Enum Value Description

NO_RECENT_DATA

Scheduled Downtime is not currently activated and no data has been received recently

OFFLINE

Scheduled Downtime is currently activated

ONLINE

Scheduled Downtime is not currently activated and data has been received recently
Example
{}

DataTransmissionTimes

Description

DataTransmissionTimes. Under development. Senseye records when data was last received on each data stream. The timestamps in DataTransmissionTimes are a summary across all data streams below the given node.

Fields
Field Name Description
mostRecent - Time The most recent time that data was received across all data streams
leastRecent - Time The least recent time that data was received across all data streams
Example
{
  "mostRecent": "10:15:30Z",
  "leastRecent": "10:15:30Z"
}

DataType

Description

Type of content contained in the raw data

Values
Enum Value Description

BOOLEAN

Boolean content

NUMBER

Number content

STRING

String content
Example
{}

DegradationInsight

Description

An insight raised due to a degradation

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight. If a specific version was requested using a conjoined ID:number value, this field will contain the conjoined value to simplify caching. When the most recent version was requested using a standard ID, this field will only contain the standard ID.
version - Int! The zero-based revision number of this data
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": 4,
  "version": 987,
  "isOpen": false,
  "longDescription": "xyz789",
  "shortDescription": "xyz789",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": true,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

DeleteCaseAcknowledgementInput

Description

Input type for deleteCaseAcknowledgement

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The ID of the case
Example
{}

DeleteCaseAcknowledgementPayload

Description

Return type of deleteCaseAcknowledgement

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
case - CaseFile! The updated Case
Example
{
  "clientMutationId": "xyz789",
  "case": CaseFile
}

DeleteDowntimeInput

Description

Input type used to delete existing downtime

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the downtime event to delete
nodeId - ID! The id of the node on which to delete downtime
Example
{}

DeleteDowntimePayload

Description

Return type of deleteDowntime

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

DeleteEnrolmentInput

Description

Input type of DeleteEnrolmentGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The nodeId of the enrolment to be deleted
Example
{}

DeleteEnrolmentPayload

Description

Return type of DeleteEnrolment

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "xyz789"}

DeleteExternalMappingInput

Description

specifies the mapping to be deleted

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
type - ID! The mapping type indicates the external system
externalId - String! External mapping
Example
{}

DeleteExternalMappingPayload

Description

specifies the output from deleting an external mapping

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

DeleteNodeGroupInput

Description

Input type of DeleteNodeGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group to be deleted
Example
{}

DeleteNodeGroupPayload

Description

Return type of DeleteNodeGroup

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "xyz789"}

DeleteNodeInput

Description

Input type of deleteNode

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
version - String The current version of the hierarchy; this property is deprecated - updates will affect the current hierarchy
subject - ID! The ID of the node to delete
Example
{}

DeleteNodePayload

Description

Return type of deleteNode

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
version - String! The new version of the hierarchy
Example
{
  "clientMutationId": "xyz789",
  "version": "xyz789"
}

DeleteSensorInput

Description

Input type of DeleteSensor

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the sensor to be deleted
Example
{}

DeleteSensorPayload

Description

Return type of DeleteSensor

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

DisableRegimeOnMeasureInput

Description

Input type for DisableRegimeOnMeasure

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
measureId - ID! The ID of the measure
Example
{}

DisableRegimeOnMeasurePayload

Description

Return type for DisableRegimeOnMeasure

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

Downtime

Description

Downtime captures the window when scheduled downtime has been recorded

Fields
Field Name Description
start - Time! When the scheduled downtime actually started which may precede the requested start parameter
end - Time! When the scheduled downtime actually ended, which may exceed the requested end paraameter
rules - [DowntimeRule!]! The rule(s) that resulted in this downtime
Example
{
  "start": "10:15:30Z",
  "end": "10:15:30Z",
  "rules": [DowntimeRule]
}

DowntimeAvoidedStats

Description

Statistics about downtime avoided for a hierarchy node over an aggregation window

Fields
Field Name Description
startTime - Time! The start time of the aggregation window
endTime - Time! The end time of the aggregation window
hours - Float! The number of hours of downtime avoided
Example
{
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "hours": 123.45
}

DowntimeRepeat

Description

DowntimeRepeat is the specification for repeating downtime

Fields
Field Name Description
period - String! ISO 8601 duration e.g. P3Y is 3 years
location - String! IANA timezone https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List so that local dayloght savings may be accounted for
end - Time Optional end time after which the rule will not repeat
Example
{
  "period": "xyz789",
  "location": "abc123",
  "end": "10:15:30Z"
}

DowntimeRepeatInput

Description

Input type used to specify repeat downtime events.

Fields
Input Field Description
period - String! ISO 8601 duration e.g. P3Y is 3 years
location - String! IANA timezone https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List so that local dayloght savings may be accounted for
end - Time Optional end time after which the rule will not repeat
Example
{}

DowntimeResultSet

Description

A set of downtimes

Fields
Field Name Description
results - [Downtime!]! A list of downtimes
Example
{"results": [Downtime]}

DowntimeRule

Description

DowntimeRule determines how downtime is scheduled

Fields
Field Name Description
id - ID! the rule ID
name - String! the rule name
start - Time! When the scheduled downtime started
end - Time! When the scheduled downtime ended
repeat - DowntimeRepeat definition of how to repeat this rule
Example
{
  "id": 4,
  "name": "xyz789",
  "start": "10:15:30Z",
  "end": "10:15:30Z",
  "repeat": DowntimeRepeat
}

DowntimeStatsOverview

Description

An overview of statistics about downtime under a hierarchy node aggregated into rounded time windows denoted by period and within an overall query time range between startTime and endTime (eg: monthly stats over the last year).

Fields
Field Name Description
period - StatsPeriod! The period over which stats are aggregated
startTime - Time! The rounded start time of the overall query window
endTime - Time! The rounded end time of the overall query window
avoidedStats - [DowntimeAvoidedStats!]! The stats about downtime avoided over the query window
Example
{
  "period": "DAILY",
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "avoidedStats": [DowntimeAvoidedStats]
}

EditEnrolmentInput

Description

Input type of EditEnrolment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The nodeId of the enrolment to be edited
nodeGroups - [ID!] A list of nodegroup ids this enrolment encompasses
Example
{}

EditEnrolmentPayload

Description

Return type of EditEnrolment

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
enrolment - Enrolment The updated enrolment
Example
{
  "clientMutationId": "xyz789",
  "enrolment": Enrolment
}

EditNodeGroupInput

Description

Input type of EditNodeGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group to be edited
label - String A new label for the node group
type - NodeGroupType The new type for the node group
nodes - [ID!] The ids of the nodes to be set
Example
{}

EditNodeGroupPayload

Description

Return type of EditNodeGroup

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeGroup - NodeGroup The updated node group
Example
{
  "clientMutationId": "xyz789",
  "nodeGroup": NodeGroup
}

EnableRegimeOnMeasureInput

Description

Input type for EnableRegimeOnMeasure

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
measureId - ID! The ID of the measure
Example
{}

EnableRegimeOnMeasurePayload

Description

Return type for EnableRegimeOnMeasure

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

Enrolment

Description

A list of nodegroups tied to a nodeId through an enrolment

Fields
Field Name Description
nodeId - ID! The nodeId of the enrolment
nodeGroups - [NodeGroup!]! A list of nodegroup ids this enrolment encompasses
inherited - [NodeGroup!]! A list of nodegroups inherited from parent enrolments
Example
{
  "nodeId": 4,
  "nodeGroups": [NodeGroup],
  "inherited": [NodeGroup]
}

Event

Description

An event that occurs at a specific time at a point in the hierarchy

Fields
Field Name Description
creationTime - Time! When the event was created
eventTime - Time! When the event occurred
id - ID! The internal identifier used to identify the event
message - String! A description of the event
hierarchyNode - HierarchyNode! The point in the hierarchy where the event was created
type - EventType! The type of the event
Example
{
  "creationTime": "10:15:30Z",
  "eventTime": "10:15:30Z",
  "id": "4",
  "message": "xyz789",
  "hierarchyNode": HierarchyNode,
  "type": "FIVE_WHYS_ANALYSIS"
}

EventResultSet

Description

A set of events. If the request was paginated by setting 'offset' and 'limit', keep asking for pages until the ResultSet is empty

Fields
Field Name Description
results - [Event!]! A list of events
Example
{"results": [Event]}

EventStatsOverview

Description

An overview of statistics about events under a hierarchy node aggregated into rounded time windows denoted by period and within an overall query time range between startTime and endTime (eg: monthly stats over the last year).

Fields
Field Name Description
period - StatsPeriod! The period over which stats are aggregated
startTime - Time! The rounded start time of the overall query window
endTime - Time! The rounded end time of the overall query window
workEventStats - [WorkEventStats!]! The stats about work events over the query window
Example
{
  "period": "DAILY",
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "workEventStats": [WorkEventStats]
}

EventType

Description

Events are of different type

Values
Enum Value Description

FIVE_WHYS_ANALYSIS

A Five Whys root cause analysis was performed

KPI

A KPI has been recorded

MEASUREMENT

A measurement has been recorded

NOTE

A note has been made

WATCH

Node is being watched

WORK

Some work was carried out
Example
{}

ExternalMapping

Description

Represents a mapping from a senseye node to an external system

Fields
Field Name Description
externalId - ID! The external id
type - ExternalMappingType! The mapping type
Example
{
  "externalId": "4",
  "type": ExternalMappingType
}

ExternalMappingInput

Description

specifies the mapping for a senseye node to an external system

Fields
Input Field Description
type - ID! The mapping type indicates the external system being mapped to
externalId - String! The client's identifier for an artefact
Example
{}

ExternalMappingType

Description

An external mapping type defines types of external id mappings

Fields
Field Name Description
id - ID! The id of the mapping type
label - String! A human readable label
Example
{"id": 4, "label": "abc123"}

FailureMatchInsight

Description

An insight raised due to a failure match

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight. If a specific version was requested using a conjoined ID:number value, this field will contain the conjoined value to simplify caching. When the most recent version was requested using a standard ID, this field will only contain the standard ID.
version - Int! The zero-based revision number of this data
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": 4,
  "version": 987,
  "isOpen": false,
  "longDescription": "xyz789",
  "shortDescription": "xyz789",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": false,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

FailureMode

Description

A way in which something can fail

Fields
Field Name Description
id - ID! The internal identifier used to identify the failure mode
name - String! The name of the failure mode
Example
{"id": 4, "name": "abc123"}

Feature

Description

An individual measurable property of the raw data

Values
Enum Value Description

LOWER_QUARTILE

The median of the lower half of the raw data.

MAX

The highest value of the raw data

MEAN

The mean of the raw data

MEDIAN

The median of the raw data

MIN

The lowest value of the raw data

PEAK_TO_PEAK

The median of the raw data

STANDARD_DEVIATION

The standard deviation of the raw data

UPPER_QUARTILE

The median of the upper half of the raw data.
Example
{}

FeaturePeriod

Description

The period over which a feature was calculated

Values
Enum Value Description

DAILY

A daily period

HOURLY

An hourly period
Example
{}

FeatureSource

Description

Refers to a specific measure, feature, and period

Fields
Field Name Description
sensor - Sensor! The sensor from which feature data comes
measure - Measure! The measure from which feature data comes
feature - Feature! The feature that the data used
period - FeaturePeriod! The period used in calculating features
regime - String The regime the data is in, if any
dataTime - Time If the features were derived from a forecast, when it was calculated
Example
{
  "sensor": Sensor,
  "measure": Measure,
  "feature": "LOWER_QUARTILE",
  "period": "DAILY",
  "regime": "abc123",
  "dataTime": "10:15:30Z"
}

FeatureThresholdOperatorType

Description

The operators that can be used when specifying a threshold to be applied to measures

Values
Enum Value Description

EQUALS

equals

GREATER_THAN

greater than

GREATER_THAN_OR_EQUAL_TO

greater than or equal to

LESS_THAN

less than

LESS_THAN_OR_EQUAL_TO

less than or equal to

NOT_EQUALS

not equals
Example
{}

FeatureTimeSeries

Description

A time series of feature data

Fields
Field Name Description
results - [DataPoint!]! A list of feature values with their corresponding timestamps
Example
{"results": [DataPoint]}

FilteredKPIClassification

Description

FilteredKPIClassification represents a classification and a set of compatible units.

Fields
Field Name Description
classification - KPIClassification! The classification itself
units - [OntologyUnit!]! A selection of units associated with the classification
Example
{
  "classification": KPIClassification,
  "units": [OntologyUnit]
}

FilteredMeasurementClassification

Description

FilteredMeasurementClassification represents a classification and a set of compatible units.

Fields
Field Name Description
classification - MeasurementClassification! The classification itself
units - [OntologyUnit!]! A selection of units associated with the classification
Example
{
  "classification": MeasurementClassification,
  "units": [OntologyUnit]
}

FiveWhysAnalysis

Description

A FiveWhysAnalysis captures details of a Five Whys Root Cause Analysis

Fields
Field Name Description
creationTime - Time! When the event was created
eventTime - Time! When the event occurred
id - ID! The internal identifier used to identify the event
message - String! A description of the event
hierarchyNode - HierarchyNode! The point in the hierarchy where the event was created
type - EventType! The type of the event
problem - String! The problem being analyzed
whys - [String]! The determined causes of the problem
Example
{
  "creationTime": "10:15:30Z",
  "eventTime": "10:15:30Z",
  "id": "4",
  "message": "abc123",
  "hierarchyNode": HierarchyNode,
  "type": "FIVE_WHYS_ANALYSIS",
  "problem": "xyz789",
  "whys": ["xyz789"]
}

FlatlineInsight

Description

An insight raised due to a flatline

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight. If a specific version was requested using a conjoined ID:number value, this field will contain the conjoined value to simplify caching. When the most recent version was requested using a standard ID, this field will only contain the standard ID.
version - Int! The zero-based revision number of this data
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began. For feature based (an aggregate of data over a period) insights, the time returned will be at the start of the period
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": "4",
  "version": 123,
  "isOpen": false,
  "longDescription": "xyz789",
  "shortDescription": "xyz789",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": true,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

FleetNodeGroup

Description

A collection of nodes grouped together

Fields
Field Name Description
id - ID! The internal identifier used to identify a node group
label - String! The human readable name for a group, each label must be unique for a organisation
organization - Organization! The organisation to which the group belongs
creator - User! The user responsible for creating the group
nodes - [HierarchyNode!]! A list of nodes this group encompasses
type - NodeGroupType! The type of the node group
priority - Int The priority of the rule set for this configuration group, or null if no rules exist for it
rules - [ConfigRule!]! rules that are applied
canEditRules - Boolean! Indicates whether the current user can edit the rules associated with a configuration group
canEdit - Boolean! Indicates whether the current user can edit this node group's label
canDelete - Boolean! Indicates whether the current user can delete this node group
canRemoveNode - Boolean! Indicates whether the current user can remove a member node from this node group
canWritePermissions - Boolean! Indicates whether the current user can add/remove node group permissions for other users.
Example
{
  "id": 4,
  "label": "abc123",
  "organization": Organization,
  "creator": User,
  "nodes": [HierarchyNode],
  "type": "COMPARE",
  "priority": 123,
  "rules": [ConfigRule],
  "canEditRules": false,
  "canEdit": true,
  "canDelete": true,
  "canRemoveNode": true,
  "canWritePermissions": true
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
{}

FloatMetadataPatch

Description

Applies a Float to a property

Fields
Field Name Description
operation - MetadataPatchOperationType! upsert or delete
value - Float if upsert, the new property value
Example
{"operation": "DELETE", "value": 123.45}

FloatMetadataPatchInput

Description

change a float value

Fields
Input Field Description
operation - MetadataPatchOperationType! upsert or delete
value - Float if upsert, the value to apply
Example
{}

ForecastConditionViolationInsight

Description

An insight raised due to a forecast condition violation

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight. If a specific version was requested using a conjoined ID:number value, this field will contain the conjoined value to simplify caching. When the most recent version was requested using a standard ID, this field will only contain the standard ID.
version - Int! The zero-based revision number of this data
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in data where the forecasted violation was detected
probability - Float The likelihood of the violation occurring
isForecast - Boolean! Whether this insight is a forecast
conditionData - [ConditionData!]! The data that led to the condition being forecasted to violate
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": "4",
  "version": 987,
  "isOpen": true,
  "longDescription": "xyz789",
  "shortDescription": "abc123",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "probability": 123.45,
  "isForecast": true,
  "conditionData": [ConditionFeatureData],
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

GenericCaseFile

Description

A generic type of casefile that will get deleted in the future in favor of asset health casefiles and threshold casefiles.

Fields
Field Name Description
acknowledgement - Acknowledgement An acknowledgement can be attached to a case
asset - Asset! The asset that the case belongs to
closedAt - Time When the case was closed, if it has been closed
description - String The description of the case
feedback - CaseFeedback Feedback that was collected when a case is closed
id - ID! The ID of the case
isOpen - Boolean! Is the case currently open?
openedAt - Time! When the case was opened
primaryTrigger - CaseTriggerType The type of trigger that initial raised the case
triggers - [CaseTriggerType!] A list of triggers for this case sorted by relevance
closedBy - User The user that closed the case, if it is closed
content - Collection The evidence content of the case
failureModes - [FailureMode!] A list of failure modes that may be indicated by this case
recommendedActions - [String!] A list of suggested actions as a result of this case
latestManualNotificationEvent - ManualNotificationEvent The latest manual notification event. This is used to determine whether a CMMS should record this case
Example
{
  "acknowledgement": Acknowledgement,
  "asset": Asset,
  "closedAt": "10:15:30Z",
  "description": "abc123",
  "feedback": CaseFeedback,
  "id": "4",
  "isOpen": false,
  "openedAt": "10:15:30Z",
  "primaryTrigger": "ANOMALY",
  "triggers": ["ANOMALY"],
  "closedBy": User,
  "content": Collection,
  "failureModes": [FailureMode],
  "recommendedActions": ["abc123"],
  "latestManualNotificationEvent": ManualNotificationEvent
}

HasCases

Description

Provides functionality for retrieving cases

Fields
Field Name Description
cases - CaseFileResultSet! Returns cases given some query parameters. To get cases that were open at any time between x and y, set startTime to x and endTime to y
Arguments
offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

openedAfter - Time

Return cases that were opened since this time

closedBefore - Time

Return cases that were closed before this time

startTime - Time

Return cases that were either closed after this time, or are still open

endTime - Time

Return cases that were opened before this time

latestManualNotificationEventAfter - Time

Return cases where the latest manual notification event is after this time

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-341-manual-triggering-preview+json header to your request.

currentOpenCaseCount - Int!

Gets the current number of open cases associated with the node subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

caseStatistics - CaseStatsOverview!

Retrieve case file statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the case statistics

Possible Types
HasCases Types

Asset

Organization

SubLevel

Example
{
  "cases": CaseFileResultSet,
  "currentOpenCaseCount": 987,
  "caseStatistics": CaseStatsOverview
}

HasContractDetails

Description

Provides contract information if applicable to a node

Fields
Field Name Description
contractEnd - Time The date at which a contract ends
Possible Types
HasContractDetails Types

Organization

SubLevel

Example
{"contractEnd": "10:15:30Z"}

HasCurrentAttentionIndex

Description

Provides functionality for retrieving the current attention of a node

Fields
Field Name Description
currentAttentionIndex - DataPoint The current attention index of a node, taken to be the most recent attention value for an asset. Attention is calculated as the maximum of the current node's attention and that of the children below it. Attention values are between 0, indicating no attention is needed, and 1, indicating that some attention is required.
Possible Types
HasCurrentAttentionIndex Types

Asset

Organization

SubLevel

Example
{"currentAttentionIndex": DataPoint}

HasCurrentHealth

Description

Provides functionality for retrieving the current health of a node

Fields
Field Name Description
currentHealth - DataPoint The current health of a node, taken to be the most recent health value for an asset. Health is calculated as the minimum of the current node's health and that of the children below it. Health values are between 0, indicating poor health, and 1, indicating good health.
Possible Types
HasCurrentHealth Types

Asset

Organization

SubLevel

Example
{"currentHealth": DataPoint}

HasDowntime

Description

Provides functionality for retrieving downtime information

Fields
Field Name Description
downtimes - DowntimeResultSet!

Periods when the node had scheduled downtime recorded

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.new-attention-chart-preview+json header to your request.

Arguments
start - Time!

Find downtime after this point

end - Time

Find downtime up to this point, defaults to now if not specified

downtimeStatistics - DowntimeStatsOverview!

Retrieve downtime avoided statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the downtime statistics

Possible Types
HasDowntime Types

Asset

Organization

SubLevel

Example
{
  "downtimes": DowntimeResultSet,
  "downtimeStatistics": DowntimeStatsOverview
}

HasEvents

Description

Provides functionality for retrieving events under a node

Fields
Field Name Description
events - EventResultSet! Returns events matching arguments that are associated with the current node subtree
Arguments
recent - Boolean

Only include events that are deemed recent

type - EventType

The type of events to search for

types - [EventType!]

Types of events to search for

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

startTime - Time

Find all events after this time. Use in conjunction with parameter 'endTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

endTime - Time

Find all events ending before this time. Use in conjunction with parameter 'startTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

eventStatistics - EventStatsOverview!

Retrieve work event statistics aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the event statistics

Possible Types
HasEvents Types

Asset

Organization

SubLevel

Example
{
  "events": EventResultSet,
  "eventStatistics": EventStatsOverview
}

HasFailureModes

Description

Provides failure modes if applicable on a node

Fields
Field Name Description
failureModes - [FailureMode!]! Possible failure modes for a node
Possible Types
HasFailureModes Types

Asset

Example
{"failureModes": [FailureMode]}

HasKPI

Description

Provides available KPI information if applicable on a node

Fields
Field Name Description
kpiClassifications - [FilteredKPIClassification!]! Possible KPI classifications for this node
kpiStatistic - KPIStatistic!

Retrieve KPI statistics for a particular classification + unit pair, aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
classificationId - ID!

The identifier for the classification

unitId - ID!

The identifier for the unit

period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

kpiStatistics - KPIStatistics!

Retrieve KPI statistics aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

Possible Types
HasKPI Types

Asset

Organization

SubLevel

Example
{
  "kpiClassifications": [FilteredKPIClassification],
  "kpiStatistic": KPIStatistic,
  "kpiStatistics": KPIStatistics
}

HasVersion

Description

Version information associated with some insight types

Fields
Field Name Description
version - Int! The zero-based revision number of this data
Example
{"version": 987}

HasWorkActivities

Description

Provides possible work activities if applicable on a node

Fields
Field Name Description
workActivities - [WorkActivity!]! Work activities that can be carried out on a node
Possible Types
HasWorkActivities Types

Asset

Example
{"workActivities": [WorkActivity]}

HealthTimeSeries

Description

A time series for health data

Fields
Field Name Description
data - [DataPoint!]! The list of health datapoints for an asset. Will be replaced with results
results - [DataPoint!]! The list of health datapoints for an asset.
Example
{
  "data": [DataPoint],
  "results": [DataPoint]
}

HierarchyNode

Description

A node represents a single item in a hierarchy

Fields
Field Name Description
children - [HierarchyNode!]! The children of this node
id - ID! The internal ID used to identify the node
insights - InsightResultSet! Returns the insights for a given subtree, for a given time window.
Arguments
startTime - Time!

startTime is the time from which to query

endTime - Time

endTime is end of the query window. If omitted, it is set to the current time

isLeaf - Boolean! Whether this node is a leaf (i.e. has no children)
name - String! The readable name of the node
displayName - String! The potentially aliased name of the node (will otherwise be the same as the name property)
canEdit - Boolean! Indicates whether the current user can edit this node
canDelete - Boolean! Indicates whether the current user can delete this node
canEditMetadata - Boolean! Indicates whether the current user can edit the metadata on this node
canEditAttributes - Boolean! Indicates whether the current user can edit the attributes on this node
canMove - Boolean! Indicates whether the current user can move this node within the hierarchy
parent - HierarchyNode The parent of this node
path - [HierarchyNode!]! The path from the root to (but not including) the current node
search - HierarchyNodeResultSet! Retrieve nodes from below this point in the hierarchy
Arguments
type - HierarchyNodeType

The type of node to search for; exclude to search across all node types

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

order - [NodeSort!]

How to order the result set. Sort priority is based on the positioning of each NodeSort within the array. Currently only available when searching for nodes of type ASSET.

filter - [NodeFilter!]

How to filter the result set. Currently only available when searching for nodes of type ASSET.

type - HierarchyNodeType! The type of this node
ontologyType - OntologyType The ontology type of the node
organization - Organization! The organization that owns this node
version - String! The version of the hierarchy
validExternalMappingTypes - [ExternalMappingType] Valid external mapping types that may be applied to this node
externalId - ID The external ID of the node if it exists
externalMappings - [ExternalMapping] All external mappings for this node
manualNotificationTriggers - [ManualNotificationTrigger!] Whether this node and its descendents requires manual intervention to notify external systems of changes
Possible Types
HierarchyNode Types

Asset

Sensor

Measure

Organization

SubLevel

Example
{
  "children": [HierarchyNode],
  "id": "4",
  "insights": InsightResultSet,
  "isLeaf": false,
  "name": "abc123",
  "displayName": "xyz789",
  "canEdit": true,
  "canDelete": true,
  "canEditMetadata": true,
  "canEditAttributes": true,
  "canMove": false,
  "parent": HierarchyNode,
  "path": [HierarchyNode],
  "search": HierarchyNodeResultSet,
  "type": "ASSET",
  "ontologyType": OntologyType,
  "organization": Organization,
  "version": "abc123",
  "validExternalMappingTypes": [ExternalMappingType],
  "externalId": 4,
  "externalMappings": [ExternalMapping],
  "manualNotificationTriggers": [
    ManualNotificationTrigger
  ]
}

HierarchyNodeResultSet

Description

A set of hierarchy nodes

Fields
Field Name Description
results - [HierarchyNode!]! A list of hierarchy nodes.
paginationDetails - PaginationDetails Details about the page that has been returned
Example
{
  "results": [HierarchyNode],
  "paginationDetails": PaginationDetails
}

HierarchyNodeType

Description

A node type that exists in a hierarchy

Values
Enum Value Description

ASSET

An asset aggregates data from one or more sensors

MEASURE

A single time series of data from a sensor

ORGANIZATION

An organization is the highest level of a hierarchy

SENSOR

A sensor is a single data collecting node

SUBLEVEL

A conceptual 'level' in a hierarchy
Example
{}

Hub

Description

A hub provides the data for a sensor

Fields
Field Name Description
id - ID! The internal ID used to identify the hub
name - String! The name of this hub
type - HubType! The type of hub
Example
{
  "id": "4",
  "name": "xyz789",
  "type": HubType
}

HubType

Description

A hub type provides information regarding a specific type of hub

Fields
Field Name Description
id - ID! The internal ID used to identify the hub type
Example
{"id": "4"}

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
{}

IngestionType

Description

The type of ingestion that the sensor supports

Values
Enum Value Description

FREQUENCY

The sensor can ingest frequency data

TIMESERIES

The sensor can ingest time series data
Example
{}

Insight

Description

A generic insight

Fields
Field Name Description
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
createdAt - Time When the insight was created
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "endedAt": "10:15:30Z",
  "id": 4,
  "isOpen": false,
  "longDescription": "xyz789",
  "shortDescription": "abc123",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": false,
  "createdAt": "10:15:30Z",
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

InsightResultSet

Description

A set of insights

Fields
Field Name Description
results - [Insight!]! A list of insights
Example
{"results": [Insight]}

InsightType

Description

A type of insight

Values
Enum Value Description

ANOMALY

An insight raised due to anomalies

CONDITION

An insight raised due to a condition violation

DEGRADATION

An insight raised due to a degradation

FAILURE_MATCH

An insight raised due to a failure match

FLATLINE

An insight raised due to a flatline

FORECAST

An insight raised due to a forecast

MISSING_DATA

An insight raised due to missing data

RUL

An insight raised due to a Remaining Useful Life threshold violation

THRESHOLD

An insight raised due to a threshold violation

TREND

An insight raised due to a trend violation
Example
{}

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
{}

KPI

Description

A KPI captures details of a KPI recorded against a node

Fields
Field Name Description
creationTime - Time! When the KPI was created
eventTime - Time! When the KPI occurred
id - ID! The internal identifier used to identify the KPI
message - String! A description of the KPI
hierarchyNode - HierarchyNode! The point in the hierarchy where the KPI was created
type - EventType! The type of the event
classification - KPIClassification! The classification of the KPI
unit - OntologyUnit! The unit of the KPI
value - Float! The value of the KPI
Example
{
  "creationTime": "10:15:30Z",
  "eventTime": "10:15:30Z",
  "id": 4,
  "message": "xyz789",
  "hierarchyNode": HierarchyNode,
  "type": "FIVE_WHYS_ANALYSIS",
  "classification": KPIClassification,
  "unit": OntologyUnit,
  "value": 123.45
}

KPIClassification

Description

A KPI classification held within the Senseye Ontology.

Fields
Field Name Description
id - ID! The ID within Senseye's ontology
name - String! The name of the classification (e.g. Downtime Avoided)
isBeneficial - Boolean! Whether this KPI classification is beneficial
Example
{
  "id": "4",
  "name": "abc123",
  "isBeneficial": false
}

KPIClassificationStats

Description

Statistics for a single classification

Fields
Field Name Description
classification - KPIClassification! The classification for which statistics have been collected
totalValue - Float! The total value for this classification
Example
{
  "classification": KPIClassification,
  "totalValue": 123.45
}

KPIClassificationsByUnit

Description

Statistics for classifications pertaining to a specific unit

Fields
Field Name Description
unit - OntologyUnit! The unit under consideration
results - [KPIClassificationStats!]! Statistics for each classification regarding this unit
Example
{
  "unit": OntologyUnit,
  "results": [KPIClassificationStats]
}

KPIStatistic

Description

Statistics collected over a specified time span, grouped by periods regarding a particular classification + unit pair

Fields
Field Name Description
classification - KPIClassification! The classification under consideration
unit - OntologyUnit! The unit for which statistics have been collected
periods - [KPIStatisticPeriod!]! The periods over which statistics have been collected
Example
{
  "classification": KPIClassification,
  "unit": OntologyUnit,
  "periods": [KPIStatisticPeriod]
}

KPIStatisticPeriod

Description

A single statistic period regarding a particular classification + unit pair

Fields
Field Name Description
startTime - Time! The start time of the aggregation window
endTime - Time! The end time of the aggregation window
totalValue - Float! The total value for this classification
Example
{
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "totalValue": 987.65
}

KPIStatistics

Description

Statistics collected over a specified time span, grouped by periods

Fields
Field Name Description
periods - [KPIStatisticsPeriod!]! The periods over which statistics have been collected
Example
{"periods": [KPIStatisticsPeriod]}

KPIStatisticsPeriod

Description

A single statistics period

Fields
Field Name Description
startTime - Time! The start time of the aggregation window
endTime - Time! The end time of the aggregation window
classificationsByUnit - [KPIClassificationsByUnit!]! Statistics about classifications for each unit
unitsByClassification - [UnitsByKPIClassification!]! Statistics about units for each classification
Example
{
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "classificationsByUnit": [KPIClassificationsByUnit],
  "unitsByClassification": [UnitsByKPIClassification]
}

MachineNodeGroup

Description

A collection of nodes grouped together

Fields
Field Name Description
id - ID! The internal identifier used to identify a node group
label - String! The human readable name for a group, each label must be unique for a organisation
organization - Organization! The organisation to which the group belongs
creator - User! The user responsible for creating the group
nodes - [HierarchyNode!]! A list of nodes this group encompasses
type - NodeGroupType! The type of the node group
priority - Int The priority of the rule set for this configuration group, or null if no rules exist for it
rules - [ConfigRule!]! rules that are applied
canEditRules - Boolean! Indicates whether the current user can edit the rules associated with a configuration group
canEdit - Boolean! Indicates whether the current user can edit this node group's label
canDelete - Boolean! Indicates whether the current user can delete this node group
canRemoveNode - Boolean! Indicates whether the current user can remove a member node from this node group
canWritePermissions - Boolean! Indicates whether the current user can add/remove node group permissions for other users.
Example
{
  "id": "4",
  "label": "abc123",
  "organization": Organization,
  "creator": User,
  "nodes": [HierarchyNode],
  "type": "COMPARE",
  "priority": 987,
  "rules": [ConfigRule],
  "canEditRules": true,
  "canEdit": true,
  "canDelete": false,
  "canRemoveNode": true,
  "canWritePermissions": false
}

ManualNotificationEvent

Description

A record of a manual notification event

Fields
Field Name Description
eventTime - Time! When the event occurred
message - String Optional notes from the event creator
state - ManualNotificationState! The state of the event. There are rules governing state transitions, for example, a valid transition is from ENABLED to REVOKED
user - User! The creator of the event
Example
{
  "eventTime": "10:15:30Z",
  "message": "xyz789",
  "state": "ENABLED",
  "user": User
}

ManualNotificationState

Description

Manual Notifications go through a lifecycle with different states

Values
Enum Value Description

ENABLED

The notification has been enabled

REVOKED

The notification has been revoked
Example
{}

ManualNotificationTrigger

Description

Records the state about notifications for an entity

Fields
Field Name Description
type - NotificationTriggerType! The entity that is the subject of a notification
enabled - Boolean! If enabled is set to true then manual intervention is needed for the notification to be sent
Example
{"type": "CASEFILE", "enabled": false}

MappingType

Description

The type of artefact being mapped

Values
Enum Value Description

NODE

used to create a mapping type of a generic hierarchy node (see HierarchyNodeType for example)

SENSOR

used to create a mapping type of sensor which can be used when consuming the storeSensorMeasureData mutation
Example
{}

Measure

Description

Refers to a single time series of data from a sensor

Fields
Field Name Description
children - [HierarchyNode!]! The children of this measure
id - ID! The internal ID used to identify the measure
insights - InsightResultSet! Returns the insights for a given subtree, for a given time window.
Arguments
startTime - Time!

startTime is the time from which to query

endTime - Time

endTime is end of the query window. If omitted, it is set to the current time

isLeaf - Boolean! Whether this node is a leaf (i.e. has no children)
name - String! The readable name of the measure
displayName - String! The potentially aliased name of this measure (will otherwise be the same as the name property)
canEdit - Boolean! Indicates whether the current user can edit this measure
canDelete - Boolean! Indicates whether the current user can delete this measure
canEditMetadata - Boolean! Indicates whether the current user can edit the metadata on this measure
canEditAttributes - Boolean! Indicates whether the current user can edit the attributes on this measure
canMove - Boolean! Indicates whether the current user can move this node within the hierarchy
parent - HierarchyNode The parent of this measure
path - [HierarchyNode!]! The path from the root to (but not including) the measure
search - HierarchyNodeResultSet! Retrieve nodes from below this point in the hierarchy
Arguments
type - HierarchyNodeType

The type of node to search for; exclude to search across all node types

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

order - [NodeSort!]

How to order the result set. Sort priority is based on the positioning of each NodeSort within the array. Currently only available when searching for nodes of type ASSET.

filter - [NodeFilter!]

How to filter the result set. Currently only available when searching for nodes of type ASSET.

sensor - Sensor The sensor to which this measure belongs
timeseries - TimeSeries! Returns a time series that matches the provided parameters
Arguments
startTime - Time

The time from which to query. If not present it starts at the earliest recorded time.

endTime - Time

The end of the query window. If not present it ends at the current time.

feature - Feature

The specific feature to request. Defaults to mean.

period - FeaturePeriod

The period of feature to request. Defaults to hourly.

regime - String

The regime name for which features should be found.

rawData - TimeSeries! Returns a time series of raw data for the measure
Arguments
startTime - Time!

The start of the query window.

endTime - Time

The end of the query window. If not present it ends at the current time.

type - HierarchyNodeType! The type of this node
ontologyType - OntologyType The ontology type of this node
validOntologyTypes - [OntologyType] Valid ontology types that may be set to this measure
validUnits - [OntologyUnit] Valid units that may be set to this measure depending on the set ontology type
scaling - ScalingProperties Scaling properties for this measure's values
yAxisScaling - YAxisScalingProperties Scaling properties for the chart's Y-axis when displaying this measure
unit - Unit The units for this measure
dataType - DataType The data type for this measure
organization - Organization! The organization that owns this node
version - String! The version of the hierarchy
isSubjectToRegime - Boolean!

Returns true if the measure is enabled for regime processing (like isRegimeEnabled), and a regime identifier is associated with the asset

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

isRegimeEnabled - Boolean!

If regime processing has been turned off for this measure, then returns false, else true. See isSubjectToRegime for a more comprehensive check

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR100-regime-preview+json header to your request.

isControlParameter - Boolean! Returns true if the measure is defined as a control parameter
isDefaultControlParameter - Boolean! Returns true if the measure is defined as a default control parameter
controlParameterBinding - ControlParameterBinding

Returns details about a control parameter this measure is bound to

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR145-cp-preview+json header to your request.

controlParameterBindings should be used as it allows measures to have multiple control parameters.
controlParameterBindings - [ControlParameterBinding]

Returns details about the control parameters this measure is bound to

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR319-control-params-preview+json header to your request.

ignoresAssetDefaultControlParameters - Boolean!

Returns true if the measure ignores the asset's default control parameters

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR319-control-params-preview+json header to your request.

description - String Description of the measure
isHidden - Boolean! Whether this measure's associated chart should be hidden from the explore page by default
isMuted - Boolean! Whether this measure is muted i.e. the measure does not have analytics algorithms run against it
isDerivedMeasure - Boolean! Whether this measure is a derived measure or not
validExternalMappingTypes - [ExternalMappingType] Valid external id mapping types that may be applied to this node
externalId - ID The external ID of the node if it exists
externalMappings - [ExternalMapping] All external mappings for this node
manualNotificationTriggers - [ManualNotificationTrigger!] Whether this node and its descendents requires manual intervention to notify external systems of changes
componentName - String The component name for this measure
Example
{
  "children": [HierarchyNode],
  "id": 4,
  "insights": InsightResultSet,
  "isLeaf": true,
  "name": "abc123",
  "displayName": "xyz789",
  "canEdit": false,
  "canDelete": true,
  "canEditMetadata": true,
  "canEditAttributes": false,
  "canMove": true,
  "parent": HierarchyNode,
  "path": [HierarchyNode],
  "search": HierarchyNodeResultSet,
  "sensor": Sensor,
  "timeseries": TimeSeries,
  "rawData": TimeSeries,
  "type": "ASSET",
  "ontologyType": OntologyType,
  "validOntologyTypes": [OntologyType],
  "validUnits": [OntologyUnit],
  "scaling": ScalingProperties,
  "yAxisScaling": YAxisScalingProperties,
  "unit": Unit,
  "dataType": "BOOLEAN",
  "organization": Organization,
  "version": "xyz789",
  "isSubjectToRegime": true,
  "isRegimeEnabled": false,
  "isControlParameter": false,
  "isDefaultControlParameter": true,
  "controlParameterBinding": ControlParameterBinding,
  "controlParameterBindings": [ControlParameterBinding],
  "ignoresAssetDefaultControlParameters": true,
  "description": "xyz789",
  "isHidden": true,
  "isMuted": false,
  "isDerivedMeasure": true,
  "validExternalMappingTypes": [ExternalMappingType],
  "externalId": 4,
  "externalMappings": [ExternalMapping],
  "manualNotificationTriggers": [
    ManualNotificationTrigger
  ],
  "componentName": "xyz789"
}

MeasureAddThresholdsConfigAction

Description

Thresholds to apply to a measure

Fields
Field Name Description
target - ConfigActionTargetType! Feature thresholds will be created
thresholds - [MeasureThreshold!]! The thresholds to create
Example
{
  "target": "ASSET_CRITICALITY",
  "thresholds": [MeasureThreshold]
}

MeasureAddThresholdsConfigActionInput

Description

Input type to set a threshold

Fields
Input Field Description
target - ConfigActionTargetType! Feature thresholds will be created. Default = MEASURE_ADD_THRESHOLDS
thresholds - [MeasureThresholdInput!]! The thresholds to create
Example
{}

MeasureComponentConfigAction

Description

upsert or delete a measure's component

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
component - StringMetadataPatch! the component
Example
{
  "target": "ASSET_CRITICALITY",
  "component": StringMetadataPatch
}

MeasureComponentConfigActionInput

Description

input for upsert or delete a measure's component

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_COMPONENT
component - StringMetadataPatchInput! set the component
Example
{}

MeasureControlParametersInput

Description

Control parameter settings for a single measure

Fields
Input Field Description
measureId - ID! The ID of the measure to which the control parameters will apply
ignoreDefaultControlParameters - Boolean! Whether the control parameters set on the asset should be ignored
subscribeToControlParameterMeasureIds - [ID!] The measures which are to be set as control parameters of the measure. If unset, the control parameters of the measure will not change. If set to an empty array, they will be removed.
Example
{}

MeasureDeleteThresholdsConfigAction

Description

Thresholds to be removed from a measure by name

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
thresholdNames - [String!]! The names of the thresholds to delete
Example
{
  "target": "ASSET_CRITICALITY",
  "thresholdNames": ["abc123"]
}

MeasureDeleteThresholdsConfigActionInput

Description

Input type to delete a threshold by name

Fields
Input Field Description
target - ConfigActionTargetType! Named feature thresholds will be deleted. Default = MEASURE_DELETE_THRESHOLDS
thresholdNames - [String]! The names of the thresholds to delete
Example
{}

MeasureDescriptionConfigAction

Description

upsert or delete a measure's description

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
description - StringMetadataPatch! the description
Example
{
  "target": "ASSET_CRITICALITY",
  "description": StringMetadataPatch
}

MeasureDescriptionConfigActionInput

Description

input for upsert or delete a measure's description

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_DESCRIPTION
description - StringMetadataPatchInput! set the description
Example
{}

MeasureDisplayNameConfigAction

Description

upsert or delete a measure display name

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
displayName - StringMetadataPatch! the measure display name
Example
{
  "target": "ASSET_CRITICALITY",
  "displayName": StringMetadataPatch
}

MeasureDisplayNameConfigActionInput

Description

input for upsert or delete a measure display name

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_DISPLAY_NAME
displayName - StringMetadataPatchInput! change the measure display name
Example
{}

MeasureHideChartConfigAction

Description

upsert or delete whether a measure chart is hidden

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
isHidden - BooleanMetadataPatch! the hidden property
Example
{
  "target": "ASSET_CRITICALITY",
  "isHidden": BooleanMetadataPatch
}

MeasureHideChartConfigActionInput

Description

input for upsert or delete whether a measure chart is hidden

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_HIDE_CHART
isHidden - BooleanMetadataPatchInput! set the hidden property
Example
{}

MeasureMutedConfigAction

Description

upsert or delete whether a measure is muted

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
isMuted - BooleanMetadataPatch! the muted property
Example
{
  "target": "ASSET_CRITICALITY",
  "isMuted": BooleanMetadataPatch
}

MeasureMutedConfigActionInput

Description

input for upsert or delete whether a measure is muted

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_MUTED
isMuted - BooleanMetadataPatchInput! set the muted property
Example
{}

MeasureScalingConfigAction

Description

upsert or delete measure scaling properties

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
applyScaling - BooleanMetadataPatch! whether scaling should be applied
scalingMultiplier - FloatMetadataPatch! the scaling multipler
scalingOffset - FloatMetadataPatch! the scaling offset
ontologyScaledUnit - StringMetadataPatch! the ontology scaled unit
scaledUnits - StringMetadataPatch! the scaled units
Example
{
  "target": "ASSET_CRITICALITY",
  "applyScaling": BooleanMetadataPatch,
  "scalingMultiplier": FloatMetadataPatch,
  "scalingOffset": FloatMetadataPatch,
  "ontologyScaledUnit": StringMetadataPatch,
  "scaledUnits": StringMetadataPatch
}

MeasureScalingConfigActionInput

Description

input for upsert or delete measure scaling properties

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_SCALING
applyScaling - BooleanMetadataPatchInput! set whether scaling should be applied
scalingMultiplier - FloatMetadataPatchInput! set the scaling multipler
scalingOffset - FloatMetadataPatchInput! set the scaling offset
ontologyScaledUnit - OntologyUnitsMetadataPatchInput! set the ontology scaled unit
scaledUnits - StringMetadataPatchInput! set the scaled units
Example
{}

MeasureThreshold

Description

Measure threshold details

Fields
Field Name Description
name - String! The name of the threshold
description - String! The description of the threshold
failureMode - FailureMode! The failure mode to be used if the threshold is raised
feature - Feature! The feature that the threshold applies to
period - FeaturePeriod! The period of the feature that the threshold applies to
operator - FeatureThresholdOperatorType! The operator to be used in conjunction with a value
value - Float! The threshold value
forecastingEnabled - Boolean! Whether to apply to forecasts
Example
{
  "name": "abc123",
  "description": "abc123",
  "failureMode": FailureMode,
  "feature": "LOWER_QUARTILE",
  "period": "DAILY",
  "operator": "EQUALS",
  "value": 987.65,
  "forecastingEnabled": false
}

MeasureThresholdInput

Description

Input to set a measure threshold

Fields
Input Field Description
name - String! The name of the threshold
description - String! The description of the threshold
failureModeId - ID The failure mode to be used if the threshold is raised
feature - Feature! The feature that the threshold applies to
period - FeaturePeriod! The period of the feature that the threshold applies to
operator - FeatureThresholdOperatorType! The operator to be used in conjunction with a value
value - Float! The threshold value
forecastingEnabled - Boolean! Whether to apply to forecasts
Example
{}

MeasureTypeConfigAction

Description

upsert or delete measure type and unit properties

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
ontologyMeasure - StringMetadataPatch! set the ontology measure
ontologyUnit - StringMetadataPatch! the ontology unit
units - StringMetadataPatch! the units
Example
{
  "target": "ASSET_CRITICALITY",
  "ontologyMeasure": StringMetadataPatch,
  "ontologyUnit": StringMetadataPatch,
  "units": StringMetadataPatch
}

MeasureTypeConfigActionInput

Description

input for upsert or delete measure type and unit properties

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_TYPE
ontologyMeasure - OntologyMeasureMetadataPatchInput! set the ontology measure
ontologyUnit - OntologyUnitsMetadataPatchInput! set the ontology unit
units - StringMetadataPatchInput! set the units
Example
{}

MeasureYAxisScalingConfigAction

Description

upsert or delete Y Axis properties, these affect how measures are rendered

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
scalingMode - YAxisScalingModeMetadataPatch! the scaling mode
fitMinExtent - FloatMetadataPatch! the min fit property
fitPaddingPercentage - FloatMetadataPatch! the fit padding
fixedMin - FloatMetadataPatch! the fixed min property
fixedMax - FloatMetadataPatch! the fixed max property
Example
{
  "target": "ASSET_CRITICALITY",
  "scalingMode": YAxisScalingModeMetadataPatch,
  "fitMinExtent": FloatMetadataPatch,
  "fitPaddingPercentage": FloatMetadataPatch,
  "fixedMin": FloatMetadataPatch,
  "fixedMax": FloatMetadataPatch
}

MeasureYAxisScalingConfigActionInput

Description

input for upsert or delete Y Axis properties, these affect how measures are rendered

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = MEASURE_Y_AXIS_SCALING
scalingMode - YAxisScalingModeMetadataPatchInput! set the scaling mode
fitMinExtent - FloatMetadataPatchInput! set the min fit property
fitPaddingPercentage - FloatMetadataPatchInput! set the fit padding
fixedMin - FloatMetadataPatchInput! set the fixed min property
fixedMax - FloatMetadataPatchInput! set the fixed max property
Example
{}

Measurement

Description

A Measurement captures details of a measurement recorded against an asset

Fields
Field Name Description
creationTime - Time! When the measurement was created
eventTime - Time! When the event occurred
id - ID! The internal identifier used to identify the measurement
message - String! A description of the measurement
hierarchyNode - HierarchyNode! The point in the hierarchy where the measurement was created
type - EventType! The type of the event
classification - MeasurementClassification! The classification of the measurement
unit - OntologyUnit! The unit of the measurement
value - Float! The value of the measurement
Example
{
  "creationTime": "10:15:30Z",
  "eventTime": "10:15:30Z",
  "id": 4,
  "message": "xyz789",
  "hierarchyNode": HierarchyNode,
  "type": "FIVE_WHYS_ANALYSIS",
  "classification": MeasurementClassification,
  "unit": OntologyUnit,
  "value": 123.45
}

MeasurementClassification

Description

A measurement classification held within the Senseye Ontology.

Fields
Field Name Description
id - ID! The ID within Senseye's ontology
name - String! The name of the classification (e.g. Particulate Concentration)
method - MeasurementMethod! The measurement method associated with this classification
Example
{
  "id": 4,
  "name": "abc123",
  "method": MeasurementMethod
}

MeasurementMethod

Description

A measurement method used to perform a measurement of an asset

Fields
Field Name Description
id - ID! The ID within Senseye's ontology
name - String! The name of the method (e.g. Lubrication Analysis)
Example
{
  "id": "4",
  "name": "abc123"
}

MetadataPatch

Description

The operation to be applied to a property

Fields
Field Name Description
operation - MetadataPatchOperationType! the type of operation
Example
{"operation": "DELETE"}

MetadataPatchOperationType

Description

The two patch operations

Values
Enum Value Description

DELETE

delete removes the property

UPSERT

upsert will insert if missing or update the property
Example
{}

MissingDataInsight

Description

An insight raised due to missing data

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight. If a specific version was requested using a conjoined ID:number value, this field will contain the conjoined value to simplify caching. When the most recent version was requested using a standard ID, this field will only contain the standard ID.
version - Int! The zero-based revision number of this data
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": "4",
  "version": 123,
  "isOpen": false,
  "longDescription": "xyz789",
  "shortDescription": "abc123",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": true,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

MoveNodeInput

Description

Input type of moveNode

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
version - String! The current version of the hierarchy
subject - ID! The ID of the node to move
destination - ID! The ID of the node's new parent
Example
{}

MoveNodePayload

Description

Return type of moveNode

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
node - HierarchyNode! The new parent of the relocated node
Example
{
  "clientMutationId": "xyz789",
  "node": HierarchyNode
}

NodeFilter

Description

Specifies how to filter a list of nodes

Fields
Input Field Description
or - [NodeFilter!] Used to logically OR a set of sub-filters. Leave other fields null if this is set.
field - NodeFilterField The field to filter by
op - NodeFilterOperation The filter operation to apply to the field
stringValue - String The string value pertaining to the filter operation
boolValue - Boolean The boolean value pertaining to the filter operation
Example
{}

NodeFilterField

Description

The fields which can be used to filter nodes

Values
Enum Value Description

CASEFILE_CLOSED_AT

The closed time of the casefile on the hierarchy node

CASEFILE_OPENED_AT

The opened time of the casefile on the hierarchy node

CURRENT_ATTENTION

The node's current attention index

DATA_TRANSMISSION_LEAST_RECENT

The time of hierarchy node's least recent data

DATA_TRANSMISSION_MOST_RECENT

The time of hiearchy node's most recent data

HIERARCHY_DISPLAY_NAME

The display name of the hierarchy node; may differ from the name field

HIERARCHY_MODEL

The model of the hierarchy node

HIERARCHY_NAME

The name of the hierarchy node

HIERARCHY_ONTOLOGY_TYPE

The ontology type of the hierarchy node as a MaPS ID

HIERARCHY_TYPE

The type of the hierarchy node

HIERARCHY_VENDOR

The vendor of the hierarchy node

WATCHED_STATUS

The watched status of the hierarchy node
Example
{}

NodeFilterOperation

Description

The operations which can be used to filter nodes

Values
Enum Value Description

BOOL_EQUALS

The boolean filed equals the specified value

EXISTS

The field exists

STRING_CONTAINS

The string field contains the specified value as a substring, case insensitive

STRING_EQUALS

The string field equals the specified value, case insensitive

STRING_STARTS_WITH

The string field starts with the specified value, case insensitive
Example
{}

NodeGroup

Description

An identifiable group

Fields
Field Name Description
id - ID! The internal identifier used to identify the group
label - String! The user defined label of the group
organization - Organization! The organisation to which the group belongs
creator - User! The user responsible for creating the group
nodes - [HierarchyNode!]! A list of nodes this group encompasses
type - NodeGroupType! The type of the node group
priority - Int The priority of the rule set for this configuration group, or null if no rules exist for it
rules - [ConfigRule!]! rules that are applied
canEditRules - Boolean! Indicates whether the current user can edit the rules associated with a configuration group
canEdit - Boolean! Indicates whether the current user can edit this node group's label
canDelete - Boolean! Indicates whether the current user can delete this node group
canRemoveNode - Boolean! Indicates whether the current user can remove a member node from this node group
canWritePermissions - Boolean! Indicates whether the current user can add/remove node group permissions for other users.
Example
{
  "id": 4,
  "label": "abc123",
  "organization": Organization,
  "creator": User,
  "nodes": [HierarchyNode],
  "type": "COMPARE",
  "priority": 987,
  "rules": [ConfigRule],
  "canEditRules": false,
  "canEdit": true,
  "canDelete": false,
  "canRemoveNode": false,
  "canWritePermissions": true
}

NodeGroupResultSet

Description

Results for a Node Group Query

Fields
Field Name Description
results - [NodeGroup!]! A set of Node Groups
paginationDetails - PaginationDetails Details about the page that has been returned
Example
{
  "results": [NodeGroup],
  "paginationDetails": PaginationDetails
}

NodeGroupType

Description

A type of node group

Values
Enum Value Description

COMPARE

A Node Group for comparing similar asset

CONFIGURATION

A Node Group to handle setting properties by rules

FLEET

A Node Group for grouping assets for analytical evaluation

MACHINE

A Node Group for grouping assets together indicating a single physical machine

PROCESS

A Node Group to represent the flow of activity from one asset to another
Example
{}

NodeSort

Description

Specifies how to order a list of nodes

Fields
Input Field Description
field - NodeSortField! The field to sort by
direction - SortDirection! The direction in which to sort
Example
{}

NodeSortField

Description

The fields which can be used to sort nodes

Values
Enum Value Description

CURRENT_ATTENTION

The node's current attention index

DATA_TRANSMISSION_LEAST_RECENT

The time of hierarchy node's least recent data

DATA_TRANSMISSION_MOST_RECENT

The time of hiearchy node's most recent data

HIERARCHY_DISPLAY_NAME

The display name of the hierarchy node; may differ from the name field

HIERARCHY_MODEL

The model of the hierarchy node

HIERARCHY_NAME

The name of the hierarchy node

HIERARCHY_ONTOLOGY_TYPE

The ontology type of the hierarchy node as a MaPS ID

HIERARCHY_TYPE

The type of the hierarchy node

HIERARCHY_VENDOR

The vendor of the hierarchy node
Example
{}

NoteEvent

Description

A NoteEvent captures details of a note made against a node

Fields
Field Name Description
creationTime - Time! When the event was created
eventTime - Time! When the event occurred
id - ID! The internal identifier used to identify the event
message - String! A description of the event
hierarchyNode - HierarchyNode! The point in the hierarchy where the event was created
type - EventType! The type of the event
isCaseMessaging - Boolean!

Whether the event is a case-messaging note

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.case-messaging-preview+json header to your request.

Example
{
  "creationTime": "10:15:30Z",
  "eventTime": "10:15:30Z",
  "id": 4,
  "message": "xyz789",
  "hierarchyNode": HierarchyNode,
  "type": "FIVE_WHYS_ANALYSIS",
  "isCaseMessaging": true
}

NotificationTriggerType

Description

Entities that are the subject of notification messages

Values
Enum Value Description

CASEFILE

Casefiles raised against an asset
Example
{}

OntologyMeasureMetadataPatchInput

Description

change an ontology measure value

Fields
Input Field Description
operation - MetadataPatchOperationType! upsert or delete
value - ID if upsert, the value to apply
Example
{}

OntologyType

Description

A type within the Senseye Ontology

Fields
Field Name Description
id - ID! The internal identifier used to identify the ontology type
name - String! The readable name of this ontology type
Example
{
  "id": "4",
  "name": "xyz789"
}

OntologyTypeMetadataPatchInput

Description

change an ontology type value

Fields
Input Field Description
operation - MetadataPatchOperationType! upsert or delete
value - ID if upsert, the value to apply
Example
{}

OntologyUnit

Description

A unit of measurement held within the Senseye Ontology.

Fields
Field Name Description
id - ID! The ID within Senseye's ontology
name - String The name of the unit (e.g. Pressure)
pluralName - String The plural name of the unit
symbol - String The symbol of the unit (e.g. Pa)
Example
{
  "id": 4,
  "name": "abc123",
  "pluralName": "xyz789",
  "symbol": "xyz789"
}

OntologyUnitsMetadataPatchInput

Description

change an ontology units value

Fields
Input Field Description
operation - MetadataPatchOperationType! upsert or delete
value - ID if upsert, the value to apply
Example
{}

Organization

Description

An organization is the highest level of a hierarchy

Fields
Field Name Description
children - [HierarchyNode!]! The children of this organization
currentAttentionIndex - DataPoint The current attention index of a node, taken to be the most recent attention value for an asset. Attention is calculated as the maximum of the current node's attention and that of the children below it. Attention values are between 0, indicating no attention is needed, and 1, indicating that some attention is required.
currentHealth - DataPoint The current health of a node, taken to be the most recent health value for an asset. Health is calculated as the minimum of the current node's health and that of the children below it. Health values are between 0, indicating poor health, and 1, indicating good health.
id - ID! The internal ID used to identify the organization
name - String! The readable name of the organization
displayName - String! The potentially aliased name of this organization (will otherwise be the same as the name property)
downtimes - DowntimeResultSet!

Periods when the organization had scheduled downtime recorded

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.new-attention-chart-preview+json header to your request.

Arguments
start - Time!

Find downtime after this point

end - Time

Find downtime up to this point, defaults to now if not specified

downtimeStatistics - DowntimeStatsOverview!

Retrieve downtime avoided statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the downtime statistics

locale - String! The default locale for this organization. Value must be a BCP-47 canonical value (e.g. "pt-BR" for Portuguese in Brazil).
timezone - String! The default timezone for this organization. Value must be an IANA canonical name (e.g. "Europe/Madrid").
insights - InsightResultSet! Returns the insights for a given subtree, for a given time window.
Arguments
startTime - Time!

startTime is the time from which to query

endTime - Time

endTime is end of the query window. If omitted, it is set to the current time

invitations - OrganizationInvitationResultSet! Returns the invitations for this organization. Requires administrator privileges for the organization.
Arguments
offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

statuses - [OrganizationInvitationStatus!]

Return invitations that are in one of the provided states

name - String

A case-insensitive substring query for user names

email - String

A case-insensitive substring query for email address

isAdministrator - Boolean

If true, search for users who are administrators

createdAfter - Time

Retrieve invitations created after a specific time

createdBefore - Time

Retrieve invitations created before a specific time

isLeaf - Boolean! Whether this node is a leaf (i.e. has no children)
canEdit - Boolean! Indicates whether the current user can edit this organization
canDelete - Boolean! Indicates whether the current user can delete this organization
canEditMetadata - Boolean! Indicates whether the current user can edit the metadata on this organization
canEditAttributes - Boolean! Indicates whether the current user can edit the attributes on this organization
canMove - Boolean! Indicates whether the current user can move this node within the hierarchy
parent - HierarchyNode The parent of this organization (usually nil)
path - [HierarchyNode!]! The path from the root to (but not including) the organization
search - HierarchyNodeResultSet! Retrieve nodes from below this point in the hierarchy
Arguments
type - HierarchyNodeType

The type of node to search for; exclude to search across all node types

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

order - [NodeSort!]

How to order the result set. Sort priority is based on the positioning of each NodeSort within the array. Currently only available when searching for nodes of type ASSET.

filter - [NodeFilter!]

How to filter the result set. Currently only available when searching for nodes of type ASSET.

type - HierarchyNodeType! The type of this node
ontologyType - OntologyType The ontology type of this node
kpiClassifications - [FilteredKPIClassification!]! Possible KPI classifications for this node
kpiStatistic - KPIStatistic!

Retrieve KPI statistics for a particular classification + unit pair, aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
classificationId - ID!

The identifier for the classification

unitId - ID!

The identifier for the unit

period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

kpiStatistics - KPIStatistics!

Retrieve KPI statistics aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

organization - Organization! The organization that owns this node i.e. itself
unattachedSensors - [UnattachedSensor!]! UnattachedSensors owned by this organization that are not in the hierarchy
unattachedSensorByMappingId - UnattachedSensor! Find an unattached sensor owned by this organization given a client mapping ID
Arguments
mappingId - String!
version - String! The version of the hierarchy
cases - CaseFileResultSet! Returns cases given some query parameters. To get cases that were open at any time between x and y, set startTime to x and endTime to y
Arguments
offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

openedAfter - Time

Return cases that were opened since this time

closedBefore - Time

Return cases that were closed before this time

startTime - Time

Return cases that were either closed after this time, or are still open

endTime - Time

Return cases that were opened before this time

latestManualNotificationEventAfter - Time

Return cases where the latest manual notification event is after this time

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-341-manual-triggering-preview+json header to your request.

currentOpenCaseCount - Int!

Gets the current number of open cases associated with the organization subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

caseStatistics - CaseStatsOverview!

Retrieve case file statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the case statistics

searchAllNodeGroups - NodeGroupResultSet!

Returns node groups belonging to this organization

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.node-groups-preview+json header to your request.

Arguments
types - [NodeGroupType!]

The types of node group to return An empty array indicates fetching all types

containingNodeId - ID

If supplied only node groups containing the node id will be returned

labelContains - String

If supplied only node groups with labels containing the given text will be returned

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

events - EventResultSet! Returns events matching arguments that are associated with the current organization
Arguments
recent - Boolean

Only include events that are deemed recent

type - EventType

The type of events to search for

types - [EventType!]

Types of events to search for

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

startTime - Time

Find all events after this time. Use in conjunction with parameter 'endTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

endTime - Time

Find all events ending before this time. Use in conjunction with parameter 'startTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

eventStatistics - EventStatsOverview!

Retrieve work event statistics aggregated over all nodes, including the current organization root, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the event statistics

validExternalMappingTypes - [ExternalMappingType] Valid external mapping types that may be applied to this node
externalId - ID The external ID of the node if it exists
externalMappings - [ExternalMapping] All external mappings for this node
manualNotificationTriggers - [ManualNotificationTrigger!] Whether this node and its descendents requires manual intervention to notify external systems of changes
contractEnd - Time The date at which a contract ends
Example
{
  "children": [HierarchyNode],
  "currentAttentionIndex": DataPoint,
  "currentHealth": DataPoint,
  "id": 4,
  "name": "xyz789",
  "displayName": "abc123",
  "downtimes": DowntimeResultSet,
  "downtimeStatistics": DowntimeStatsOverview,
  "locale": "abc123",
  "timezone": "abc123",
  "insights": InsightResultSet,
  "invitations": OrganizationInvitationResultSet,
  "isLeaf": true,
  "canEdit": true,
  "canDelete": true,
  "canEditMetadata": true,
  "canEditAttributes": false,
  "canMove": true,
  "parent": HierarchyNode,
  "path": [HierarchyNode],
  "search": HierarchyNodeResultSet,
  "type": "ASSET",
  "ontologyType": OntologyType,
  "kpiClassifications": [FilteredKPIClassification],
  "kpiStatistic": KPIStatistic,
  "kpiStatistics": KPIStatistics,
  "organization": Organization,
  "unattachedSensors": [UnattachedSensor],
  "unattachedSensorByMappingId": UnattachedSensor,
  "version": "abc123",
  "cases": CaseFileResultSet,
  "currentOpenCaseCount": 987,
  "caseStatistics": CaseStatsOverview,
  "searchAllNodeGroups": NodeGroupResultSet,
  "events": EventResultSet,
  "eventStatistics": EventStatsOverview,
  "validExternalMappingTypes": [ExternalMappingType],
  "externalId": 4,
  "externalMappings": [ExternalMapping],
  "manualNotificationTriggers": [
    ManualNotificationTrigger
  ],
  "contractEnd": "10:15:30Z"
}

OrganizationGroup

Description

An organization group is a group of users within an organization

Fields
Field Name Description
id - ID! The internal ID used to identify the group
Example
{"id": 4}

OrganizationInvitation

Description

An invitation sent to invite someone to an organization

Fields
Field Name Description
id - ID! The internal identifier used to identify the invitation
creationTime - Time! When the invitation was created
acceptTime - Time When the invitation was accepted, if applicable
expirationTime - Time! When the invitation will expire
cancelTime - Time When the invitation was cancelled, if applicable
lastSentTime - Time When the invitation was last sent, if applicable
name - String! The name of the user who was invited
email - String! The email address of the user who was invited
organization - Organization! The organization to which the user was invited
isAdministrator - Boolean! Whether the invited user will be an administrator
invitingUser - User! Who invited the user to the organization
locale - String! The locale for the new user
message - String! The extra information sent to the user in the invitation
sendCount - Int! How many times the invitation has been sent
status - OrganizationInvitationStatus! The status of the invitation
groups - [OrganizationGroup!] The groups that the user is being invited to
isSSO - Boolean!

True if the authentication to Senseye will be using an SSO connection

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-211-preview+json header to your request.

userId - String

The userId from Senseye's authority provider for the user being invited. Will not be set for new Senseye users

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-211-preview+json header to your request.

organizationName - String

The organization name that the user being invited to

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-211-preview+json header to your request.

organizationId - String!

The id of the organization that the user being invited to

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-211-preview+json header to your request.

Example
{
  "id": "4",
  "creationTime": "10:15:30Z",
  "acceptTime": "10:15:30Z",
  "expirationTime": "10:15:30Z",
  "cancelTime": "10:15:30Z",
  "lastSentTime": "10:15:30Z",
  "name": "xyz789",
  "email": "abc123",
  "organization": Organization,
  "isAdministrator": true,
  "invitingUser": User,
  "locale": "xyz789",
  "message": "xyz789",
  "sendCount": 987,
  "status": "ACCEPTED",
  "groups": [OrganizationGroup],
  "isSSO": false,
  "userId": "abc123",
  "organizationName": "abc123",
  "organizationId": "abc123"
}

OrganizationInvitationResultSet

Description

A set of organization invitations

Fields
Field Name Description
paginationDetails - PaginationDetails! Details about the page that has been returned
results - [OrganizationInvitation!]! A list of organization invitations
Example
{
  "paginationDetails": PaginationDetails,
  "results": [OrganizationInvitation]
}

OrganizationInvitationStatus

Description

The status of an invitation

Values
Enum Value Description

ACCEPTED

The invitation has been accepted by the invited user

CANCELED

The invitation has been canceled by the inviting user

EXPIRED

The invitation has expired

PENDING

The invitation has been sent and is awaiting a response from the invited user
Example
{}

PaginatedResultSet

Description

A result set that can have multiple pages

Fields
Field Name Description
paginationDetails - PaginationDetails! Details about the page that has been returned
Possible Types
PaginatedResultSet Types

CaseFileResultSet

OrganizationInvitationResultSet

Example
{"paginationDetails": PaginationDetails}

PaginationDetails

Description

Information regarding a paged response

Fields
Field Name Description
count - Int! The number of results in this page.
limit - Int! The limit used when retrieving the results.
offset - Int! The offset into the set of results.
total - Int! The total number of results in the set. This number may change between queries.
Example
{"count": 987, "limit": 123, "offset": 987, "total": 123}

Period

Description

A span of time, in the form [from, to) - i.e. including from, not including to.

Fields
Field Name Description
endTime - Time! The end of the time period (exclusive)
startTime - Time! The start of the time period (inclusive)
Example
{
  "endTime": "10:15:30Z",
  "startTime": "10:15:30Z"
}

PredictedNeedForIntervention

Description

The predicted probability that intervention will be required in the future on an asset.

Fields
Field Name Description
results - [DataPoint!]! A future dated timeseries, detailing the predicted likelihood that intervention will be required before the given date. Each data point value is a floating point number between 0 and 100 denoting the likelihood.
Example
{"results": [DataPoint]}

ProcessNodeGroup

Description

A collection of nodes grouped together

Fields
Field Name Description
id - ID! The internal identifier used to identify a node group
label - String! The human readable name for a group, each label must be unique for a organisation
organization - Organization! The organisation to which the group belongs
creator - User! The user responsible for creating the group
nodes - [HierarchyNode!]! A list of nodes this group encompasses
type - NodeGroupType! The type of the node group
priority - Int The priority of the rule set for this configuration group, or null if no rules exist for it
rules - [ConfigRule!]! rules that are applied
canEditRules - Boolean! Indicates whether the current user can edit the rules associated with a configuration group
canEdit - Boolean! Indicates whether the current user can edit this node group's label
canDelete - Boolean! Indicates whether the current user can delete this node group
canRemoveNode - Boolean! Indicates whether the current user can remove a member node from this node group
canWritePermissions - Boolean! Indicates whether the current user can add/remove node group permissions for other users.
Example
{
  "id": 4,
  "label": "abc123",
  "organization": Organization,
  "creator": User,
  "nodes": [HierarchyNode],
  "type": "COMPARE",
  "priority": 123,
  "rules": [ConfigRule],
  "canEditRules": true,
  "canEdit": false,
  "canDelete": true,
  "canRemoveNode": true,
  "canWritePermissions": false
}

RULInsight

Description

An insight raised due to a Remaining Useful Life threshold violation

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": "4",
  "isOpen": true,
  "longDescription": "abc123",
  "shortDescription": "xyz789",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": false,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

RawSource

Description

Refers to a specific measure

Fields
Field Name Description
sensor - Sensor! The sensor from which the data comes
measure - Measure! The measure from which the data comes
regime - String The regime the data is in, if any
Example
{
  "sensor": Sensor,
  "measure": Measure,
  "regime": "abc123"
}

RawTimeSeries

Description

A time series of raw data

Fields
Field Name Description
results - [DataPoint!]! A list of raw data points (no key present, only timestamps + values)
nextStartTime - Time If more data, the start time of the follow-up request. Null if all data returned.
nextEndTime - Time If more data, the end time of the follow-up request. Null if all data returned.
Example
{
  "results": [DataPoint],
  "nextStartTime": "10:15:30Z",
  "nextEndTime": "10:15:30Z"
}

RegimeCalendar

Description

RegimeCalendar

Fields
Field Name Description
id - String! A unique identifier for the regime calendar
producerAsset - Asset! The asset that produces the regime calendar
producerMeasure - Measure! The measure that produces the regime calendar
Example
{
  "id": "abc123",
  "producerAsset": Asset,
  "producerMeasure": Measure
}

RegimePeriods

Description

The periods during which an asset was in a specific regime

Fields
Field Name Description
name - String! A unique name for the function, or regime, of the asset
periods - [Period!]! The periods during which the asset was in the specified regime
Example
{
  "name": "xyz789",
  "periods": [Period]
}

RegimeResultSet

Description

Results for a regime query

Fields
Field Name Description
results - [RegimePeriods!]! A set of regime periods
Example
{"results": [RegimePeriods]}

RemoveInsightFromCaseFileInput

Description

Input type for removeInsightFromCaseFile

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
caseFileId - ID! The id of the case
elementId - ID! The element id of the insight being removed from the case
reason - String! Why the change is being made (freeform)
version - Int! The current insight version should be recorded for information purposes
Example
{}

RemoveInsightFromCaseFilePayload

Description

Return type of removeInsightFromCaseFile

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
caseFile - CaseFile! The updated Case
Example
{
  "clientMutationId": "xyz789",
  "caseFile": CaseFile
}

RemoveNodeFromGroupInput

Description

Input type of RemoveNodeFromGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group to be updated
node - ID! The id of the node to be removed
Example
{}

RemoveNodeFromGroupPayload

Description

Return type of RemoveNodeFromGroup

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeGroup - NodeGroup The updated node group
Example
{
  "clientMutationId": "abc123",
  "nodeGroup": NodeGroup
}

RemoveNodeGroupFromEnrolmentInput

Description

Input type of RemoveNodeGroupFromEnrolment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The nodeId of the enrolment to be updated
nodeGroup - ID! The id of the nodeGroup to be removed
Example
{}

RemoveNodeGroupFromEnrolmentPayload

Description

Return type of RemoveNodeGroupFromEnrolment

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
enrolment - Enrolment The updated enrolment
Example
{
  "clientMutationId": "xyz789",
  "enrolment": Enrolment
}

RemoveNodeGroupsFromEnrolmentInput

Description

Input type of RemoveNodeGroupsFromEnrolment

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeId - ID! The nodeId of the enrolment to be updated
nodeGroups - [ID!]! The id of the nodeGroup to be removed
Example
{}

RemoveNodeGroupsFromEnrolmentPayload

Description

Return type of RemoveNodeGroupsFromEnrolment

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
enrolment - Enrolment The updated enrolment
Example
{
  "clientMutationId": "xyz789",
  "enrolment": Enrolment
}

RemoveNodesFromGroupInput

Description

Input type of RemoveNodesFromGroup

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group to be updated
nodes - [ID!]! The ids of the nodes to be removed
Example
{}

RemoveNodesFromGroupPayload

Description

Return type of RemoveNodesFromGroup

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeGroup - NodeGroup The updated node group
Example
{
  "clientMutationId": "xyz789",
  "nodeGroup": NodeGroup
}

ReorderCaseFileElementsInput

Description

Input type for ReorderCaseFileElementsInput

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
caseFileId - ID! The id of the case
elementIds - [ID!]! The new ordering of the element ids. All element ids in the caseFile should be referenced. An element id is caseFile's reference to an element, not the specific element's own id. So, for an insight, an element id would not be the insight id.
reason - String! Why the change is being made (freeform)
Example
{}

ReorderCaseFileElementsPayload

Description

Return type of reorderCaseFileElements

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
caseFile - CaseFile! The updated Case
Example
{
  "clientMutationId": "abc123",
  "caseFile": CaseFile
}

SatisfactionRating

Description

The satisfaction rating given to a casefile

Values
Enum Value Description

EXCELLENT_VERY_HELPFUL

Excellent, very helpful

GOOD_QUITE_HELPFUL

Good, quite helpful

NOT_VERY_HELPFUL

Not very helpful

NO_USE_AT_ALL

No use at all

OK_OF_SOME_HELP

OK, of some help
Example
{}

SaveConfigRulesToGroupInput

Description

Input type of SaveConfigRulesToGroupInput

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the group that the rules will be attached to
priority - Int The priority of the rules, uses a previous or default value if not specified
rules - [ConfigRuleInput!]! The array of rules to be stored against the group, this will replace any previous rules
Example
{}

SaveConfigRulesToGroupPayload

Description

Return type of SaveConfigRulesToGroupPayload

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
nodeGroup - NodeGroup The updated node group
Example
{
  "clientMutationId": "xyz789",
  "nodeGroup": NodeGroup
}

ScalingProperties

Description

Properties that define how a measure's values are scaled.

Fields
Field Name Description
multiplier - Float! What the value should be multiplied by (defaults to 1)
offset - Float! What the value should be incremented by (defaults to 0)
unit - Unit The new unit of the value after scaling
Example
{"multiplier": 987.65, "offset": 987.65, "unit": Unit}

SendOrganizationInvitationInput

Description

Input type of SendOrganizationInvitation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The internal identifier used to identify the invitation
Example
{}

SendOrganizationInvitationPayload

Description

Return type of SendOrganizationInvitation

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

SenseyeError

Description

Errors that can be returned via the 'errors' array. These will appear in 'extensions' under the key 'code'

Values
Enum Value Description

CONTACT_SUPPORT

This type of error may require investigation by our team, please contact senseye.support.industry@siemens.com with all the error details

ENROLMENT_DOES_NOT_EXIST

The request failed because the enrolment does not exist for a node

EXTERNAL_ID_AND_HIERARCHY_ID_NOT_SET

The request failed because neither the external ID nor hierarchy node ID were set in the request

EXTERNAL_ID_MAPPING_USED

The request failed because the external ID in the request is already associated with another node

EXTERNAL_ID_NOT_MAPPED

The request failed because the external ID in the request was not linked to anything in the hierarchy

INVITATION_ACCEPTED

The user invitation operation failed because the invitation has already been accepted

INVITATION_ALREADY_MEMBER

The user invitation creation request failed because the target user's e-mail is already associated with a member in the target organization (ie: the user is already a member of the organization)

INVITATION_CANCELED

The user invitation operation failed because the invitation has been canceled

INVITATION_EXPIRED

The user invitation operation failed because the invitation has expired

INVITATION_PASSWORD_TOO_WEAK

The user invitation operation failed because the password was too weak

INVITATION_PENDING_LIMIT_REACHED

The user has too many pending invitations. An existing invitation must be accepted, cancelled or expire before the user can create any more.

MAPPING_ID_NOT_MAPPED

The request failed because the mapping ID in the request was not linked to anything in the hierarchy

MISSING_AUTH_TOKEN

The request failed because a valid auth token was not detected

NODE_DOES_NOT_EXIST

The request failed because the node does not exist in the hierarchy

NODE_GROUP_DUPLICATE_NODE_IN_UNIQUE_GROUP

The request failed because some group types (e.g. fleet, machine) enforce that all nodes in that group are unique

NODE_GROUP_NODE_ALREADY_IN_RESTRICTED_GROUP

The request failed because some group types (e.g. machine) enforce that a node can only ever be in one group of that type

NODE_GROUP_REGIME_PRODUCER_NOT_IN_GROUP

The request failed because a regime consumer is being orphaned in a group, the regime producer is being removed

NODE_IS_NOT_AN_ASSET

The request failed because the node is not an asset

NODE_UNEXPECTED_ONTOLOGY_TYPE

The request failed because the node was of an incorrect ontology type

WORK_EVENT_UNEXPECTED_FAILURE_MODE

The request failed because the failure mode was of an incorrect type

WORK_EVENT_UNEXPECTED_WORK_ACTIVITY

The request failed because the work activity was of an incorrect type
Example
{}

Sensor

Description

A sensor typically relates to a single data collecting node at a site. Each sensor is expected to have one or more measures. A Sensor will be attached to an Asset in the organization's hierarchy

Fields
Field Name Description
asset - Asset The parent asset of this sensor
children - [HierarchyNode!]! The children of this sensor
id - ID! The internal ID used to identify the sensor
insights - InsightResultSet! Returns the insights for a given subtree, for a given time window.
Arguments
startTime - Time!

startTime is the time from which to query

endTime - Time

endTime is end of the query window. If omitted, it is set to the current time

isLeaf - Boolean! Whether this node is a leaf (i.e. has no children)
measures - [Measure!]! Any time series measures that are recorded for this sensor
name - String! The readable name of the sensor
displayName - String! The potentially aliased name of this sensor (will otherwise be the same as the name property)
description - String Description of the sensor
canEdit - Boolean! Indicates whether the current user can edit this sensor
canDelete - Boolean! Indicates whether the current user can delete this sensor
canEditMetadata - Boolean! Indicates whether the current user can edit the metadata on this sensor
canEditAttributes - Boolean! Indicates whether the current user can edit the attributes on this sensor
canMove - Boolean! Indicates whether the current user can move this node within the hierarchy
parent - HierarchyNode The parent of this sensor
path - [HierarchyNode!]! The path from the root to (but not including) the sensor
ingestType - IngestionType! The type of ingestion of data that the sensor supports
search - HierarchyNodeResultSet! Retrieve nodes from below this point in the hierarchy
Arguments
type - HierarchyNodeType

The type of node to search for; exclude to search across all node types

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

order - [NodeSort!]

How to order the result set. Sort priority is based on the positioning of each NodeSort within the array. Currently only available when searching for nodes of type ASSET.

filter - [NodeFilter!]

How to filter the result set. Currently only available when searching for nodes of type ASSET.

type - HierarchyNodeType! The type of this node
ontologyType - OntologyType The ontology type of the node
hub - Hub! The hub associated with this sensor
organization - Organization! The organization that owns this node
version - String! The version of the hierarchy
dataTransmissionTimes - DataTransmissionTimes! Returns a summary of data received on measures belonging to the sensor.
validExternalMappingTypes - [ExternalMappingType] Valid external mapping types that may be applied to this node
externalId - ID The external ID of the node if it exists
externalMappings - [ExternalMapping] All external mappings for this node
manualNotificationTriggers - [ManualNotificationTrigger!] Whether this node and its descendents requires manual intervention to notify external systems of changes
Example
{
  "asset": Asset,
  "children": [HierarchyNode],
  "id": 4,
  "insights": InsightResultSet,
  "isLeaf": false,
  "measures": [Measure],
  "name": "abc123",
  "displayName": "xyz789",
  "description": "abc123",
  "canEdit": true,
  "canDelete": false,
  "canEditMetadata": true,
  "canEditAttributes": true,
  "canMove": true,
  "parent": HierarchyNode,
  "path": [HierarchyNode],
  "ingestType": "FREQUENCY",
  "search": HierarchyNodeResultSet,
  "type": "ASSET",
  "ontologyType": OntologyType,
  "hub": Hub,
  "organization": Organization,
  "version": "abc123",
  "dataTransmissionTimes": DataTransmissionTimes,
  "validExternalMappingTypes": [ExternalMappingType],
  "externalId": "4",
  "externalMappings": [ExternalMapping],
  "manualNotificationTriggers": [
    ManualNotificationTrigger
  ]
}

SensorDescriptionConfigAction

Description

upsert or delete a sensor's description

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
description - StringMetadataPatch! the description
Example
{
  "target": "ASSET_CRITICALITY",
  "description": StringMetadataPatch
}

SensorDescriptionConfigActionInput

Description

input for upsert or delete a sensor's description

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = SENSOR_DESCRIPTION
description - StringMetadataPatchInput! set the description
Example
{}

SensorHubType

Description

A type of hub

Values
Enum Value Description

IHUB

Senseye's internal hub
Example
{}

SensorMeasure

Description

The sensor ID / measure name tuple that identifies a measure uniquely

Fields
Input Field Description
measureName - String! The name of the measure on the given sensor
sensorId - String! A unique ID for a sensor
Example
{}

SensorVibrationConfigAction

Description

upsert or delete sensor vibration properties

Fields
Field Name Description
target - ConfigActionTargetType! the target that the action will be applied to
rotationalSpeed - FloatMetadataPatch set the rotational speed
rotationalSpeedVariation - FloatMetadataPatch set the rotational speed variation
speedDetectionEnabled - BooleanMetadataPatch enable/disable speed detection
speedDetectionRotationalMin - FloatMetadataPatch set the speed detection min rotational speed
speedDetectionRotationalMax - FloatMetadataPatch set the speed detection max rotational speed
Example
{
  "target": "ASSET_CRITICALITY",
  "rotationalSpeed": FloatMetadataPatch,
  "rotationalSpeedVariation": FloatMetadataPatch,
  "speedDetectionEnabled": BooleanMetadataPatch,
  "speedDetectionRotationalMin": FloatMetadataPatch,
  "speedDetectionRotationalMax": FloatMetadataPatch
}

SensorVibrationConfigActionInput

Description

input for upsert or delete sensor vibration properties

Fields
Input Field Description
target - ConfigActionTargetType! the target that the action will be applied to. Default = SENSOR_VIBRATION
rotationalSpeed - FloatMetadataPatchInput set the rotational speed
rotationalSpeedVariation - FloatMetadataPatchInput set the rotational speed variation
speedDetectionEnabled - BooleanMetadataPatchInput enable/disable speed detection
speedDetectionRotationalMin - FloatMetadataPatchInput set the speed detection min rotational speed
speedDetectionRotationalMax - FloatMetadataPatchInput set the speed detection max rotational speed
Example
{}

SetActiveOrganizationInput

Description

Input type of SetActiveOrganization

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The ID of the organization
Example
{}

SetActiveOrganizationPayload

Description

Return type of SetActiveOrganization

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

SetConsumedRegimeCalendarInput

Description

Input type for SetConsumedRegimeCalendar

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
consumerAssetId - ID! The ID of the asset that is going to consume a regime
calendar - ID! The ID of the regime calendar which will be from an asset that produces regimes
Example
{}

SetConsumedRegimeCalendarPayload

Description

Return type for SetConsumedRegimeCalendar

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

SetControlParameterMappingsInput

Description

The input parameters for the setControlParameterMappings mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
mappings - [ControlParameterMappingInput!]! The ID of the asset on which the control parameter is to be set
Example
{}

SetControlParameterMappingsPayload

Description

Return type of SetControlParameterMappings

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

SetDefaultControlParameterInput

Description

The input parameters for the setDefaultControlParameter mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
assetId - ID! The ID of the asset on which the control parameter is to be set
measureId - ID The ID of the measure that represents the control parameter of the asset. This may be null, which will unset the control parameter for the asset.
Example
{}

SetDefaultControlParameterPayload

Description

Return type of SetDefaultControlParameter

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

SetDefaultControlParametersInput

Description

The input parameters for the setDefaultControlParameters mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
assetId - ID! The ID of the asset on which the control parameters are to be set
defaultControlParameterMeasureIds - [ID!]! The IDs of the measures that represent the control parameters of the asset.
This may be empty, which will remove the control parameters for the asset.
Example
{}

SetDefaultControlParametersPayload

Description

Return type of SetDefaultControlParameters

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

SetExternalIdInput

Description

Input type for setExternalId which creates a mapping from a client's identifier to a Senseye identifier

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
externalId - ID! The client's identifier for an artefact
type - MappingType The mapping type of the artefact being mapped, defaults to NODE
id - ID! Senseye's internal ID to be mapped to the client's externalId
Example
{}

SetExternalIdPayload

Description

Return type of SetExternalId

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
externalId - String! The client's identifier for an artefact
type - MappingType The mapping type of the artefact being mapped
id - ID! Senseye's internal ID that has been mapped to the client's externalId
Example
{
  "clientMutationId": "xyz789",
  "externalId": "xyz789",
  "type": "NODE",
  "id": "4"
}

SetExternalMappingsInput

Description

specifies the mappings for a senseye node to external systems

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! Senseye's internal ID that has been mapped to the client's externalId
externalMappings - [ExternalMappingInput] External mappings
Example
{}

SetExternalMappingsPayload

Description

specifies the output from setting external mappings

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
externalMappings - [ExternalMapping] All external mappings for this node
Example
{
  "clientMutationId": "xyz789",
  "externalMappings": [ExternalMapping]
}

SetMeasureControlParametersInput

Description

The input parameters for the setMeasureControlParameters mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
measureControlParameters - [MeasureControlParametersInput!]! The measure control parameters to be set
Example
{}

SetMeasureControlParametersPayload

Description

Return type of SetMeasureControlParameters

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

SetMeasureMutedInput

Description

The input parameters for the setMeasureMuted mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
measureId - ID! The ID of the measure
muted - Boolean! true means the measure is muted, false means the measure is not muted and Senseye algorithms run over the measure's values
Example
{}

SetMeasureMutedPayload

Description

Return type of setMeasureMuted

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
measureId - ID! The ID of the measure
muted - Boolean! true means the measure is muted, false means the measure is not muted and Senseye algorithms run over the measure's values
Example
{
  "clientMutationId": "xyz789",
  "measureId": "4",
  "muted": true
}

SetRegimeIdentifierInput

Description

Input type for SetRegimeIdentifier

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
assetId - ID! The asset ID associated with the regime
measureId - ID! The measure ID associated with the regime
Example
{}

SetRegimeIdentifierPayload

Description

Return type for SetRegimeIdentifier

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "xyz789"}

SimilarAssetResultSet

Description

Results for a Similar Assets Query

Fields
Field Name Description
results - [Asset!]! A set of Assets
Example
{"results": [Asset]}

SortDirection

Description

Specifies the direction in which to sort a list of items

Values
Enum Value Description

ASC

Ascending: from smallest to largest

DESC

Descending: from largest to smallest
Example
{}

StatsPeriod

Description

The period over which to aggregate some statistics.

Values
Enum Value Description

DAILY

A rounded daily aggregation period (ie: midnight - 23:59:59)

MONTHLY

A rounded monthly period (ie: start of month midnight - end of month 23:59:59)

WEEKLY

A rounded weekly aggregation period (ie: Sunday midnight - Saturday 23:59:59)
Example
{}

StoreSensorMeasureDataInput

Description

Input type of StoreSensorMeasureData

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
sensorId - ID The senseye sensor id. Either this field or mappingId must be set. If this field is set then it will be used over mappingId.
mappingId - ID A unique identifier that the client uses to refer to a sensor, can be used if set in mutation createSensor. Either this field or sensorId must be set. mappingId is associated with the IHUB
dataPoints - [DataPointInput!]! Data
Example
{}

StoreSensorMeasureDataPayload

Description

Return type of StoreSensorMeasureData

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "xyz789"}

String

Description

The Stringscalar 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
{}

StringMetadataPatch

Description

Applies a String to a property

Fields
Field Name Description
operation - MetadataPatchOperationType! upsert or delete
value - String if upsert, the new property value
Example
{"operation": "DELETE", "value": "abc123"}

StringMetadataPatchInput

Description

change a string value

Fields
Input Field Description
operation - MetadataPatchOperationType! upsert or delete
value - String if upsert, the value to apply
Example
{}

SubLevel

Description

A conceptual 'level' in a hierarchy

Fields
Field Name Description
children - [HierarchyNode!]! The children of this sublevel
currentAttentionIndex - DataPoint The current attention index of a node, taken to be the most recent attention value for an asset. Attention is calculated as the maximum of the current node's attention and that of the children below it. Attention values are between 0, indicating no attention is needed, and 1, indicating that some attention is required.
currentHealth - DataPoint The current health of a node, taken to be the most recent health value for an asset. Health is calculated as the minimum of the current node's health and that of the children below it. Health values are between 0, indicating poor health, and 1, indicating good health.
id - ID! The internal ID used to identify the node
insights - InsightResultSet! Returns the insights for a given subtree, for a given time window.
Arguments
startTime - Time!

startTime is the time from which to query

endTime - Time

endTime is end of the query window. If omitted, it is set to the current time

isLeaf - Boolean! Whether this node is a leaf (i.e. has no children)
name - String! The readable name of the node
displayName - String! The potentially aliased name of this node (will otherwise be the same as the name property)
canEdit - Boolean! Indicates whether the current user can edit this sublevel
canDelete - Boolean! Indicates whether the current user can delete this sublevel
canEditMetadata - Boolean! Indicates whether the current user can edit the metadata on this sublevel
canEditAttributes - Boolean! Indicates whether the current user can edit the attributes on this sublevel
canMove - Boolean! Indicates whether the current user can move this node within the hierarchy
parent - HierarchyNode The parent of this sublevel
path - [HierarchyNode!]! The path from the root to (but not including) the current node
search - HierarchyNodeResultSet! Retrieve nodes from below this point in the hierarchy
Arguments
type - HierarchyNodeType

The type of node to search for; exclude to search across all node types

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

order - [NodeSort!]

How to order the result set. Sort priority is based on the positioning of each NodeSort within the array. Currently only available when searching for nodes of type ASSET.

filter - [NodeFilter!]

How to filter the result set. Currently only available when searching for nodes of type ASSET.

type - HierarchyNodeType! The type of this node
ontologyType - OntologyType The ontology type of this node
kpiClassifications - [FilteredKPIClassification!]! Possible KPI classifications for this node
kpiStatistic - KPIStatistic!

Retrieve KPI statistics for a particular classification + unit pair, aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
classificationId - ID!

The identifier for the classification

unitId - ID!

The identifier for the unit

period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

kpiStatistics - KPIStatistics!

Retrieve KPI statistics aggregated over all nodes, including the current node, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.kpis-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly; defaults to now if not provided

assetFilter - AssetStatisticsFilter

Filters assets targeted by the KPI statistics

organization - Organization! The organization that owns this node
version - String! The version of the hierarchy
cases - CaseFileResultSet! Returns cases given some query parameters. To get cases that were open at any time between x and y, set startTime to x and endTime to y
Arguments
offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

openedAfter - Time

Return cases that were opened since this time

closedBefore - Time

Return cases that were closed before this time

startTime - Time

Return cases that were either closed after this time, or are still open

endTime - Time

Return cases that were opened before this time

latestManualNotificationEventAfter - Time

Return cases where the latest manual notification event is after this time

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-341-manual-triggering-preview+json header to your request.

currentOpenCaseCount - Int!

Gets the current number of open cases associated with the sub-level subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

caseStatistics - CaseStatsOverview!

Retrieve case file statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the case statistics

downtimes - DowntimeResultSet!

Periods when the organization had scheduled downtime recorded

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.new-attention-chart-preview+json header to your request.

Arguments
start - Time!

Find downtime after this point

end - Time

Find downtime up to this point, defaults to now if not specified

downtimeStatistics - DowntimeStatsOverview!

Retrieve downtime avoided statistics for nodes below this point in the hierarchy

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the downtime statistics

events - EventResultSet! Returns events matching arguments that are associated with the current sub-level
Arguments
recent - Boolean

Only include events that are deemed recent

type - EventType

The type of events to search for

types - [EventType!]

Types of events to search for

offset - Int

The offset into the list of results to return

limit - Int

The maximum number of results to return

startTime - Time

Find all events after this time. Use in conjunction with parameter 'endTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

endTime - Time

Find all events ending before this time. Use in conjunction with parameter 'startTime', it is not compatible with parameters 'recent', 'offset' or 'limit'

eventStatistics - EventStatsOverview!

Retrieve work event statistics aggregated over all nodes, including the current sub-level, below this point in the hierarchy subtree

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-198-stats-tab-preview+json header to your request.

Arguments
period - StatsPeriod!

The period over which stats are aggregated

startTime - Time!

The approximate start time of the overall query window; may be rounded down to fit the period cleanly

endTime - Time

The approximate end time of the overall query window; may be rounded up to fit the period cleanly

assetFilter - AssetStatisticsFilter

Filters assets targeted by the event statistics

validExternalMappingTypes - [ExternalMappingType] Valid external mapping types that may be applied to this node
externalId - ID The external ID of the node if it exists
externalMappings - [ExternalMapping] All external mappings for this node
manualNotificationTriggers - [ManualNotificationTrigger!] Whether this node and its descendents requires manual intervention to notify external systems of changes
contractEnd - Time The date at which a contract ends
Example
{
  "children": [HierarchyNode],
  "currentAttentionIndex": DataPoint,
  "currentHealth": DataPoint,
  "id": "4",
  "insights": InsightResultSet,
  "isLeaf": true,
  "name": "abc123",
  "displayName": "abc123",
  "canEdit": false,
  "canDelete": false,
  "canEditMetadata": true,
  "canEditAttributes": false,
  "canMove": false,
  "parent": HierarchyNode,
  "path": [HierarchyNode],
  "search": HierarchyNodeResultSet,
  "type": "ASSET",
  "ontologyType": OntologyType,
  "kpiClassifications": [FilteredKPIClassification],
  "kpiStatistic": KPIStatistic,
  "kpiStatistics": KPIStatistics,
  "organization": Organization,
  "version": "xyz789",
  "cases": CaseFileResultSet,
  "currentOpenCaseCount": 987,
  "caseStatistics": CaseStatsOverview,
  "downtimes": DowntimeResultSet,
  "downtimeStatistics": DowntimeStatsOverview,
  "events": EventResultSet,
  "eventStatistics": EventStatsOverview,
  "validExternalMappingTypes": [ExternalMappingType],
  "externalId": 4,
  "externalMappings": [ExternalMapping],
  "manualNotificationTriggers": [
    ManualNotificationTrigger
  ],
  "contractEnd": "10:15:30Z"
}

ThresholdInsight

Description

An insight raised due to a threshold violation

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight. If a specific version was requested using a conjoined ID:number value, this field will contain the conjoined value to simplify caching. When the most recent version was requested using a standard ID, this field will only contain the standard ID.
version - Int! The zero-based revision number of this data
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the behaviour was detected or became significant
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": 4,
  "version": 123,
  "isOpen": false,
  "longDescription": "xyz789",
  "shortDescription": "xyz789",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": true,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

Time

Description

An RFC3339 encoded UTC date string.

Example
{}

TimeSeries

Description

A time series interface that can be used by functions returning time->value pairs

Fields
Field Name Description
results - [DataPoint!]! The data points that make up the time series
Example
{"results": [DataPoint]}

TrendInsight

Description

An insight raised due to a trend violation

Fields
Field Name Description
createdAt - Time When the insight was created
endedAt - Time! When the insight ended
id - ID! The internal identifier used to identify the insight
isOpen - Boolean! Whether the insight is still open
longDescription - String A long description of the insight
shortDescription - String A short description of the insight
startedAt - Time! When the insight began
dataTime - Time The point in the data where the trend was detected
isForecast - Boolean! Whether this insight is a forecast
type - InsightType! The type of the insight
source - [DataSource!]! The data sources referred to by this insight
containingCaseFiles - [CaseFile!]!

The cases that contain (any version of) this insight

This is an experimental feature that can be toggled by adding the Accept application/vnd.senseye.SPR-236-preview+json header to your request.

Arguments
includeDeleted - Boolean!

include cases where the insight has been deleted from the latest version of the case

Example
{
  "createdAt": "10:15:30Z",
  "endedAt": "10:15:30Z",
  "id": 4,
  "isOpen": true,
  "longDescription": "xyz789",
  "shortDescription": "abc123",
  "startedAt": "10:15:30Z",
  "dataTime": "10:15:30Z",
  "isForecast": true,
  "type": "ANOMALY",
  "source": [FeatureSource],
  "containingCaseFiles": [CaseFile]
}

UnattachAttachedSensorsInput

Description

Input type for unattachAttachedSensors

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
assetID - ID! Unattached sensors will become unattached from this asset
hierarchyVersion - ID The version of the hierarchy being updated; this property is deprecated - updates will affect the current hierarchy
attachedSensors - [ID!]! The ids of attachedSensors that are to become unattached from the asset
Example
{}

UnattachAttachedSensorsPayload

Description

Return type of unattachAttachedSensor

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
asset - Asset! The updated Asset
Example
{
  "clientMutationId": "abc123",
  "asset": Asset
}

UnattachedSensor

Description

An UnattachedSensor is a sensor that is in the process of being integrated with the Senseye system. In due course it will be linked to an Asset and a Hierarchy, at which point it will become a Sensor. Until then, instances of this type will only be available through an Organization's unattachedSensors property

Fields
Field Name Description
id - ID! The internal ID used to identify the sensor
name - String! The readable name of the sensor
mappingId - String A unique optional identifier that the client uses to refer to a sensor. The mutation storeSensorMeasureData allows data to be captured for the sensor. If this identifier is set, then data can be associated with it, else a client will need to specify the sensorId returned in CreateSensorPayload
canEdit - Boolean! Indicates whether the current user can edit this sensor
canDelete - Boolean! Indicates whether the current user can delete this sensor
Example
{
  "id": 4,
  "name": "xyz789",
  "mappingId": "xyz789",
  "canEdit": false,
  "canDelete": false
}

Unit

Description

A unit of measurement.

Fields
Field Name Description
name - String The name of the unit (e.g. Pressure)
symbol - String The symbol of the unit (e.g. Pa)
Possible Types
Unit Types

OntologyUnit

CustomUnit

Example
{
  "name": "abc123",
  "symbol": "xyz789"
}

UnitStats

Description

Statistics for a single unit

Fields
Field Name Description
unit - OntologyUnit! The unit for which statistics have been collected
totalValue - Float! The total value for this unit
Example
{"unit": OntologyUnit, "totalValue": 987.65}

UnitsByKPIClassification

Description

Statistics for units pertaining to a specific KPI classification

Fields
Field Name Description
classification - KPIClassification! The classification under consideration
results - [UnitStats!]! Statistics for each unit regarding this classification
Example
{
  "classification": KPIClassification,
  "results": [UnitStats]
}

UnsetConsumedRegimeCalendarInput

Description

Input type for UnsetConsumedRegimeCalendar

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
consumerAssetId - ID! The ID of the asset that is no longer going to consume a regime
Example
{}

UnsetConsumedRegimeCalendarPayload

Description

Return type for UnsetConsumedRegimeCalendar

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
Example
{"clientMutationId": "abc123"}

UpdateAssetInput

Description

The input parameters for the updateAsset mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The ID of the asset
name - String The name of the asset
ontologyType - ID The ontology type of the asset
Example
{}

UpdateAssetPayload

Description

Return type of updateAsset

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
asset - Asset! The updated asset
Example
{
  "clientMutationId": "xyz789",
  "asset": Asset
}

UpdateDowntimeInput

Description

Input type used to update existing downtime

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The id of the downtime event to update
nodeId - ID! The id of the node on which to update downtime
name - String! The name of the downtime rule
start - Time! When the scheduled downtime started
end - Time! When the scheduled downtime ended
repeat - DowntimeRepeatInput Optional repeat specification for the downtime
Example
{}

UpdateDowntimePayload

Description

Return type of updateDowntime

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
downtime - DowntimeRule! The resultant downtime from the update action
Example
{
  "clientMutationId": "abc123",
  "downtime": DowntimeRule
}

UpdateMeasureInput

Description

The input parameters for the updateMeasure mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The ID of the measure
displayName - String The display name of the measure
description - String The description of the measure
unit - ID The unit of the measure
ontologyType - ID The ontology type of the measure
hideMeasureChart - Boolean Whether a measure's chart is hidden or visible
Example
{}

UpdateMeasurePayload

Description

Return type of updateMeasure

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
measure - Measure! The updated measure
Example
{
  "clientMutationId": "abc123",
  "measure": Measure
}

UpdateSensorInput

Description

The input parameters for the updateSensor mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The ID of the sensor
name - String The name of the sensor
description - String The description of the sensor
Example
{}

UpdateSensorPayload

Description

Return type of updateSensor

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
sensor - Sensor! The updated sensor
Example
{
  "clientMutationId": "xyz789",
  "sensor": Sensor
}

UpdateSubLevelInput

Description

The input parameters for the updateSubLevel mutation

Fields
Input Field Description
clientMutationId - String A unique identifier for the client performing the mutation
id - ID! The ID of the sublevel
name - String The name of the sublevel
Example
{}

UpdateSubLevelPayload

Description

Return type of updateSubLevel

Fields
Field Name Description
clientMutationId - String A unique identifier for the client performing the mutation
sublevel - SubLevel! The updated sublevel
Example
{
  "clientMutationId": "abc123",
  "sublevel": SubLevel
}

User

Description

A registered user

Fields
Field Name Description
id - ID! The internal identifier used to identify the user
name - String! The user's name
email - String! The user's email address, if readable by the querier. Empty otherwise
Example
{
  "id": 4,
  "name": "xyz789",
  "email": "abc123"
}

WatchEvent

Description

A WatchEvent captures details of a node being watched or unwatched

Fields
Field Name Description
creationTime - Time! When the event was created
eventTime - Time! When the event occurred
id - ID! The internal identifier used to identify the event
message - String! A description of the event
hierarchyNode - HierarchyNode! The point in the hierarchy where the event was created
type - EventType! The type of the event
subType - String! The event subtype
owner - User! The watch event creator
Example
{
  "creationTime": "10:15:30Z",
  "eventTime": "10:15:30Z",
  "id": "4",
  "message": "abc123",
  "hierarchyNode": HierarchyNode,
  "type": "FIVE_WHYS_ANALYSIS",
  "subType": "xyz789",
  "owner": User
}

WatchedStatus

Description

WatchedStatus describes a node's watched status

Fields
Field Name Description
enabled - Boolean! If true, then the last watch event was enabled. If false, either there are no watch events or the last watch event was disabled
watchEvent - WatchEvent If it exists, last watch event details
Example
{"enabled": false, "watchEvent": WatchEvent}

WorkActivity

Description

An activity that can be performed

Fields
Field Name Description
id - ID! The internal identifier used to identify the work activity
name - String! The name of the work activity
Example
{"id": 4, "name": "abc123"}

WorkActivityStats

Description

A collection of stats about work events concerning a particular activity and routine flag

Fields
Field Name Description
count - Int! The total number of work events found for the routine + activity combination
isRoutine - Boolean! Whether the work was done as routine maintenance
workActivity - WorkActivity! The associated work activity
Example
{
  "count": 123,
  "isRoutine": true,
  "workActivity": WorkActivity
}

WorkEvent

Description

A work event describes some work carried out at a point in the hierarchy

Fields
Field Name Description
creationTime - Time! When the event was created
downtimeAvoided - Int The amount of downtime in minutes avoided due to the work
eventTime - Time! When the event occurred
failureMode - FailureMode The failure which led to the work being carried out
hierarchyNode - HierarchyNode! The point in the hierarchy where the event was created
id - ID! The internal identifier used to identify the event
isRoutine - Boolean! Whether the work was done as routine maintenance
message - String! A description of the event
timeSpent - Int The amount of time in minutes spent on the work
workActivity - WorkActivity! The work activity that was carried out
isRelearning - Boolean Whether to trigger relearning
type - EventType! The type of the event
promptedBySenseye - Boolean Whether the event was prompted by Senseye
Example
{
  "creationTime": "10:15:30Z",
  "downtimeAvoided": 987,
  "eventTime": "10:15:30Z",
  "failureMode": FailureMode,
  "hierarchyNode": HierarchyNode,
  "id": "4",
  "isRoutine": false,
  "message": "xyz789",
  "timeSpent": 987,
  "workActivity": WorkActivity,
  "isRelearning": true,
  "type": "FIVE_WHYS_ANALYSIS",
  "promptedBySenseye": true
}

WorkEventStats

Description

A collection of statistics about work events over a given aggregation window with counts grouped by by the work activity and routine flag

Fields
Field Name Description
startTime - Time! The start time of the aggregation window
endTime - Time! The end time of the aggregation window
activityStats - [WorkActivityStats!]! The work events stats by sub-type
Example
{
  "startTime": "10:15:30Z",
  "endTime": "10:15:30Z",
  "activityStats": [WorkActivityStats]
}

YAxisScalingModeMetadataPatch

Description

YAxisScalingModeMetadataPatch applies

Fields
Field Name Description
operation - MetadataPatchOperationType! upsert or delete
value - YAxisScalingModeType if upsert, the new property value
Example
{"operation": "DELETE", "value": "FIT"}

YAxisScalingModeMetadataPatchInput

Description

the type of y axis scaling required

Fields
Input Field Description
operation - MetadataPatchOperationType! upsert or delete
value - YAxisScalingModeType if upsert, the new property value
Example
{}

YAxisScalingModeType

Description

ScalingModeType different modes of scaling when rendering charts

Values
Enum Value Description

FIT

Auto-scale the axis to fit the extent of the data (min -> max data values). The data fills the whole chart, but padding and a minimum extent can be configured.

FIXED

Scale the axis based on fixed minimum and maximum values. Data points outside of this specific range will not be visible.

ZERO_BOUND

Scale from 0 to max if all data is >= 0. If there are negative data points, pull down the lower bound to fit.
Example
{}

YAxisScalingProperties

Description

Properties that define how a chart's Y-axis is scaled.

Fields
Field Name Description
mode - YAxisScalingModeType The mode of scaling applied to the Y-Axis when displayed in charts
fitMinExtent - Float The min extent of the Y-axis when in FIT mode
fitPaddingPercentage - Float The extra padding of the Y-axis when in FIT mode
fixedMin - Float The minimum value of the Y-axis when in FIXED mode
fixedMax - Float The maximum value of the Y-axis when in FIXED mode
Example
{
  "mode": "FIT",
  "fitMinExtent": 123.45,
  "fitPaddingPercentage": 987.65,
  "fixedMin": 987.65,
  "fixedMax": 987.65
}