DRIVR GraphQL API

DRIVR is an IoT platform that allows device manufacturers to connect their devices, collect data at scale and make aggregated and raw data and device control available through an easy-to-use API. All with simple and transparent SaaS pricing.

This is the static GraphQL API documentation. It contains everything but the metadata, which can be configured per domain by using MetadataTypes. To view the complete schema including metadata or to test the API, go to https://{slug}.api.drivr.cloud/ to open your personal GraphiQL instance or just click on "Open GraphiQL" within the Customer Portal.

API Endpoints
https://{slug}.api.drivr.cloud/graphql
Headers
# Your API token. Must be included in all API calls.
Authorization: Bearer <YOUR_TOKEN_HERE>

Queries

aggregatedDatapoints

Description

Get multiple _AggregatedDatapoint_s.

Response

Returns a PagedAggregatedDatapoints!

Arguments
Name Description
after - String The cursor after which items should be returned.
carryForward - Boolean Add an aggregate datapoint to each grid interval even if no explicit datapoint was published during that interval. In the case of missing datapoints, the last value recorded is carried forward into empty time intervals.
characteristicCode - [String] The list of Characteristic codes by which to filter fetched items.
characteristicUuid - [UUID] The list of Characteristic UUIDs by which to filter fetched items.
componentCode - [String] The list of Component codes by which to filter fetched items.
componentModelCode - [String] The list of Component Model codes by which to filter fetched items.
componentModelUuid - [UUID] The list of Component Model UUIDs by which to filter fetched items.
componentUuid - [UUID] The list of Component UUIDs by which to filter fetched items.
from - DateTime The inclusive start of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the previous possible time. A grid of 1h will snap to the previous full hour A grid of 1d snaps to the previous midnight in the UTC time zone A grid of 1w snaps to the previous midnight on Monday in the UTC time zone All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with a time of 12:12:00 matches to 12:00:00 and returns all elements from 12:00:00 to 12:15:00 in this grid.
grid - Timespan Given a start and end time, a grid is the size of the partitions by which this time period should be divided. It is specified by a timespan in ISO 8601 duration format. If the grid is set, start and end are required. The smallest time unit supported for the grid is second. The largest time unit supported for the grid is week. All grid values must be evenly divisible into the next largest available time unit (minutes, hours, days or weeks). For example, 20s is valid because it can evenly divide into 60 seconds (20 · 3 = 60 seconds = 1 minute). All grid values must be non-zero, non-negative integers. Grid values may be represented in smaller units as long as they evenly divide into the next largest unit. For example, 120s may be used instead of 2m because 120s / 60s = 2m. Grids which are in hours can only be full hours (1-23) (e.g. 1 hour 30 minutes is invalid). Grids which are in days must be full days (1-6) (e.g. 1 day and 3 hours is invalid) Grids which are in weeks cannot have smaller units (days or hours) attached (e.g. 1 week and 1 day is invalid)
group - [AggregatedDatapointGroup] Group results by object.
limit - Int The maximum number of items which should be returned.
orderBy - [DatapointOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
round - Int Optional Integer. Configures the rounding of aggregate values before being counted. round specifies the number decimals to use when rounding the number. 0 rounds to the nearest integer. Optional, defaults to no rounding applied.
serviceCode - [String] The list of Service codes by which to filter fetched items.
serviceIndex - [Int] A list of Service & ComponentModel relationship indices to filter retrieved items.
serviceUuid - [UUID] A list of Service UUIDs by which to filter retrieved items.
systemCode - [String] The list of System codes by which to filter fetched items.
systemUuid - [UUID] The list of System UUIDs by which to filter fetched items.
timeStreamUuid - [UUID] The list of TimeStream UUIDs by which to filter fetched items.
to - DateTime The exclusive end of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the next possible time. A grid of 1h will snap to the next full hour A grid of 1d snaps to next midnight in the UTC time zone A grid of 1w snaps to the next midnight on Monday in the UTC time zone. All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with an to time of 12:12:00 matches to 12:15:00 and returns all elements from 12:00:00 to 12:15:00 in the last grid.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - AggregatedDatapointsWhereQuery Complex filtering over _AggregatedDatapoint_s.

Example

Query
query aggregatedDatapoints(
  $after: String,
  $carryForward: Boolean,
  $characteristicCode: [String],
  $characteristicUuid: [UUID],
  $componentCode: [String],
  $componentModelCode: [String],
  $componentModelUuid: [UUID],
  $componentUuid: [UUID],
  $from: DateTime,
  $grid: Timespan,
  $group: [AggregatedDatapointGroup],
  $limit: Int,
  $orderBy: [DatapointOrderByQuery],
  $round: Int,
  $serviceCode: [String],
  $serviceIndex: [Int],
  $serviceUuid: [UUID],
  $systemCode: [String],
  $systemUuid: [UUID],
  $timeStreamUuid: [UUID],
  $to: DateTime,
  $uuid: [UUID],
  $where: AggregatedDatapointsWhereQuery
) {
  aggregatedDatapoints(
    after: $after,
    carryForward: $carryForward,
    characteristicCode: $characteristicCode,
    characteristicUuid: $characteristicUuid,
    componentCode: $componentCode,
    componentModelCode: $componentModelCode,
    componentModelUuid: $componentModelUuid,
    componentUuid: $componentUuid,
    from: $from,
    grid: $grid,
    group: $group,
    limit: $limit,
    orderBy: $orderBy,
    round: $round,
    serviceCode: $serviceCode,
    serviceIndex: $serviceIndex,
    serviceUuid: $serviceUuid,
    systemCode: $systemCode,
    systemUuid: $systemUuid,
    timeStreamUuid: $timeStreamUuid,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...AggregatedDatapointFragment
    }
    limit
  }
}
Variables
{
  "after": "abc123",
  "carryForward": true,
  "characteristicCode": ["abc123"],
  "characteristicUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentCode": ["xyz789"],
  "componentModelCode": ["abc123"],
  "componentModelUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "from": "2007-12-03T10:15:30Z",
  "grid": Timespan,
  "group": ["CHARACTERISTIC"],
  "limit": 987,
  "orderBy": [DatapointOrderByQuery],
  "round": 987,
  "serviceCode": ["abc123"],
  "serviceIndex": [123],
  "serviceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "systemCode": ["abc123"],
  "systemUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "timeStreamUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": AggregatedDatapointsWhereQuery
}
Response
{
  "data": {
    "aggregatedDatapoints": {
      "cursor": "xyz789",
      "items": [AggregatedDatapoint],
      "limit": 987
    }
  }
}

aggregatedEvents

Description

Aggregate events on different entities.

Response

Returns a PagedAggregatedEvents!

Arguments
Name Description
after - String The cursor after which items should be returned.
from - DateTime The inclusive from of the window which data should be requested.
groupBy - AggregatedEventGroupingEntityType! The grouping which should be applied.
limit - Int The maximum number of items which should be returned.
orderBy - [AggregatedEventOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
to - DateTime The exclusive to of the window which data should be requested
where - AggregatedEventQuery Complex filtering over events

Example

Query
query aggregatedEvents(
  $after: String,
  $from: DateTime,
  $groupBy: AggregatedEventGroupingEntityType!,
  $limit: Int,
  $orderBy: [AggregatedEventOrderByQuery],
  $to: DateTime,
  $where: AggregatedEventQuery
) {
  aggregatedEvents(
    after: $after,
    from: $from,
    groupBy: $groupBy,
    limit: $limit,
    orderBy: $orderBy,
    to: $to,
    where: $where
  ) {
    cursor
    items {
      ...AggregatedEventFragment
    }
    limit
  }
}
Variables
{
  "after": "xyz789",
  "from": "2007-12-03T10:15:30Z",
  "groupBy": "COMPONENT",
  "limit": 987,
  "orderBy": [AggregatedEventOrderByQuery],
  "to": "2007-12-03T10:15:30Z",
  "where": AggregatedEventQuery
}
Response
{
  "data": {
    "aggregatedEvents": {
      "cursor": "xyz789",
      "items": [AggregatedEvent],
      "limit": 987
    }
  }
}

applicationConsumer

Description

This endpoint retrieves a specific ApplicationConsumer by UUID.

Response

Returns an ApplicationConsumer!

Arguments
Name Description
uuid - UUID! The UUID of the ApplicationConsumer.

Example

Query
query applicationConsumer($uuid: UUID!) {
  applicationConsumer(uuid: $uuid) {
    createdAt
    defaultRedirectUri
    domain {
      ...DomainFragment
    }
    domainUuid
    grantTypes
    identifier
    name
    noExplicitConsentRequired
    owner {
      ... on Organization {
        ...OrganizationFragment
      }
      ... on User {
        ...UserFragment
      }
    }
    ownerUuid
    redirectUris
    scopes
    secret
    slug
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "applicationConsumer": {
      "createdAt": "2007-12-03T10:15:30Z",
      "defaultRedirectUri": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "grantTypes": ["AUTHORIZATION_CODE"],
      "identifier": "xyz789",
      "name": "abc123",
      "noExplicitConsentRequired": false,
      "owner": Organization,
      "ownerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "redirectUris": ["xyz789"],
      "scopes": ["xyz789"],
      "secret": "xyz789",
      "slug": "xyz789",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

applicationConsumers

Description

This endpoint retrieves multiple ApplicationConsumer objects.

Response

Returns a PagedApplicationConsumers!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [ApplicationConsumerOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - ApplicationConsumerQuery Filtering options for ApplicationConsumer objects.

Example

Query
query applicationConsumers(
  $limit: Int,
  $offset: Int,
  $orderBy: [ApplicationConsumerOrderByQuery],
  $uuid: [UUID],
  $where: ApplicationConsumerQuery
) {
  applicationConsumers(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...ApplicationConsumerFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 123,
  "offset": 987,
  "orderBy": [ApplicationConsumerOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": ApplicationConsumerQuery
}
Response
{
  "data": {
    "applicationConsumers": {
      "items": [ApplicationConsumer],
      "limit": 987,
      "offset": 987,
      "totalItems": 987
    }
  }
}

authenticationMethod

Description

Retrieve a specific DomainAuthenticationMethod by its UUID.

Response

Returns an AuthenticationMethod!

Arguments
Name Description
uuid - UUID! The UUID of the DomainAuthenticationMethod to retrieve.

Example

Query
query authenticationMethod($uuid: UUID!) {
  authenticationMethod(uuid: $uuid) {
    ... on AzureAuthenticationMethod {
      ...AzureAuthenticationMethodFragment
    }
    ... on DefaultAuthenticationMethod {
      ...DefaultAuthenticationMethodFragment
    }
    ... on GoogleAuthenticationMethod {
      ...GoogleAuthenticationMethodFragment
    }
    ... on OpenIdDelegatedAuthenticationMethod {
      ...OpenIdDelegatedAuthenticationMethodFragment
    }
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "authenticationMethod": AzureAuthenticationMethod
  }
}

authenticationMethods

Description

This endpoint returns multiple DomainAuthenticationMethods for the current Domain based on filter criteria specified as arguments. Each DomainAuthenticationMethods represents a global setting for authentication against DRIVR. This could be internal or a third party system depending on the DomainAuthenticationMethod configured.

Response

Returns a PagedAuthenticationMethods!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [DomainAuthenticationMethodOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - DomainAuthenticationMethodQuery Filter the DomainAuthenticationMethods by complex conditions. This can be one or multiple conditions, using field names as keys, and its specific conditions as the value of that key.

Example

Query
query authenticationMethods(
  $limit: Int,
  $offset: Int,
  $orderBy: [DomainAuthenticationMethodOrderByQuery],
  $uuid: [UUID],
  $where: DomainAuthenticationMethodQuery
) {
  authenticationMethods(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ... on AzureAuthenticationMethod {
        ...AzureAuthenticationMethodFragment
      }
      ... on DefaultAuthenticationMethod {
        ...DefaultAuthenticationMethodFragment
      }
      ... on GoogleAuthenticationMethod {
        ...GoogleAuthenticationMethodFragment
      }
      ... on OpenIdDelegatedAuthenticationMethod {
        ...OpenIdDelegatedAuthenticationMethodFragment
      }
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 123,
  "offset": 123,
  "orderBy": [DomainAuthenticationMethodOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": DomainAuthenticationMethodQuery
}
Response
{
  "data": {
    "authenticationMethods": {
      "items": [AzureAuthenticationMethod],
      "limit": 123,
      "offset": 987,
      "totalItems": 987
    }
  }
}

certificate

Description

Get a specific Certificate by UUID.

Response

Returns a Certificate!

Arguments
Name Description
uuid - UUID! The UUID of the Certificate to be retrieved.

Example

Query
query certificate($uuid: UUID!) {
  certificate(uuid: $uuid) {
    certificate
    createdAt
    csr
    domain {
      ...DomainFragment
    }
    domainUuid
    duration
    entity {
      ... on Component {
        ...ComponentFragment
      }
      ... on System {
        ...SystemFragment
      }
    }
    entityType
    entityUuid
    expiresAt
    issuer {
      ...IssuerFragment
    }
    issuerUuid
    name
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "certificate": {
      "certificate": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z",
      "csr": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "duration": Timespan,
      "entity": Component,
      "entityType": "COMPONENT",
      "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "expiresAt": "2007-12-03T10:15:30Z",
      "issuer": Issuer,
      "issuerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "name": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

certificates

Description

Retrieve multiple Certificates.

Response

Returns a PagedCertificates!

Arguments
Name Description
entityType - CertificateEntityType The type of entity that the Certificate object pertains to.
entityUuid - [UUID] The list of System or Component UUIDs to filter the Certificates by.
issuerUuid - [UUID] The list of Issuer UUIDs to filter the Certificates by.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [CertificateOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - CertificateQuery Complex filtering over Certificates.

Example

Query
query certificates(
  $entityType: CertificateEntityType,
  $entityUuid: [UUID],
  $issuerUuid: [UUID],
  $limit: Int,
  $offset: Int,
  $orderBy: [CertificateOrderByQuery],
  $uuid: [UUID],
  $where: CertificateQuery
) {
  certificates(
    entityType: $entityType,
    entityUuid: $entityUuid,
    issuerUuid: $issuerUuid,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...CertificateFragment
    }
    limit
  }
}
Variables
{
  "entityType": "COMPONENT",
  "entityUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "issuerUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 123,
  "offset": 987,
  "orderBy": [CertificateOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": CertificateQuery
}
Response
{
  "data": {
    "certificates": {
      "cursor": "abc123",
      "items": [Certificate],
      "limit": 987
    }
  }
}

characteristic

Description

Returns the details of the Characteristic with the provided uuid.

Response

Returns a Characteristic!

Arguments
Name Description
uuid - UUID! The uuid of the Characteristic to be returned.

Example

Query
query characteristic($uuid: UUID!) {
  characteristic(uuid: $uuid) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "characteristic": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "xyz789",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "xyz789",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

characteristicValidValue

Description

Retrieves the information about a CharacteristicValidValue entity with a specific UUID.

Response

Returns a CharacteristicValidValue!

Arguments
Name Description
uuid - UUID! The UUID of the CharacteristicValidValue entity to retrieve.

Example

Query
query characteristicValidValue($uuid: UUID!) {
  characteristicValidValue(uuid: $uuid) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    dataType
    description
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "characteristicValidValue": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

characteristicValidValues

Description

Retrieves information for multiple CharacteristicValidValue entities.

Response

Returns a PagedCharacteristicValidValues!

Arguments
Name Description
characteristicUuid - [UUID] The UUID of the Characteristic entity to filter by.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [CharacteristicValidValueOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.

Example

Query
query characteristicValidValues(
  $characteristicUuid: [UUID],
  $limit: Int,
  $offset: Int,
  $orderBy: [CharacteristicValidValueOrderByQuery],
  $uuid: [UUID]
) {
  characteristicValidValues(
    characteristicUuid: $characteristicUuid,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid
  ) {
    items {
      ...CharacteristicValidValueFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "characteristicUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 987,
  "offset": 123,
  "orderBy": [CharacteristicValidValueOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ]
}
Response
{
  "data": {
    "characteristicValidValues": {
      "items": [CharacteristicValidValue],
      "limit": 987,
      "offset": 123,
      "totalItems": 987
    }
  }
}

characteristics

Description

Returns a list of paged Characteristic's matching a given set of filters and ordering.

Response

Returns a PagedCharacteristics!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [CharacteristicOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - CharacteristicQuery Complex filtering over Characteristics.

Example

Query
query characteristics(
  $limit: Int,
  $offset: Int,
  $orderBy: [CharacteristicOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: CharacteristicQuery
) {
  characteristics(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...CharacteristicFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 123,
  "offset": 123,
  "orderBy": [CharacteristicOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": CharacteristicQuery
}
Response
{
  "data": {
    "characteristics": {
      "items": [Characteristic],
      "limit": 987,
      "offset": 123,
      "totalItems": 123
    }
  }
}

component

Description

Get a specific Component by UUID.

Response

Returns a Component!

Arguments
Name Description
uuid - UUID! The UUID of the Component to be retrieved.

Example

Query
query component($uuid: UUID!) {
  component(uuid: $uuid) {
    certificate {
      ...CertificateFragment
    }
    characteristics {
      ...PagedCharacteristicsFragment
    }
    code
    componentModel {
      ...ComponentModelFragment
    }
    componentModelUuid
    connectionState
    connectionStateUpdatedAt
    createdAt
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesOnComponentFragment
    }
    status
    system {
      ...SystemFragment
    }
    systemUuid
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "component": {
      "certificate": Certificate,
      "characteristics": PagedCharacteristics,
      "code": "xyz789",
      "componentModel": ComponentModel,
      "componentModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "connectionState": "CONNECTED",
      "connectionStateUpdatedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "xyz789",
      "services": PagedServicesOnComponent,
      "status": "ACTIVATED",
      "system": System,
      "systemUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

componentModel

Description

Retrieve a specific ComponentModel by its UUID

Response

Returns a ComponentModel!

Arguments
Name Description
uuid - UUID! UUID of the ComponentModel to be retrieved.

Example

Query
query componentModel($uuid: UUID!) {
  componentModel(uuid: $uuid) {
    code
    componentType
    components {
      ...PagedComponentsFragment
    }
    createdAt
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    isConnective
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesOnComponentModelFragment
    }
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "componentModel": {
      "code": "xyz789",
      "componentType": "DEVICE",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "isConnective": false,
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServicesOnComponentModel,
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

componentModels

Description

This endpoint retrieves multiple ComponentModel objects by filtering and/or pagination.

Response

Returns a PagedComponentModels!

Arguments
Name Description
code - String Filter component models by their code.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [ComponentModelOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - ComponentModelQuery Complex filtering over ComponentModels.

Example

Query
query componentModels(
  $code: String,
  $limit: Int,
  $offset: Int,
  $orderBy: [ComponentModelOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: ComponentModelQuery
) {
  componentModels(
    code: $code,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...ComponentModelFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "code": "xyz789",
  "limit": 123,
  "offset": 123,
  "orderBy": [ComponentModelOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": ComponentModelQuery
}
Response
{
  "data": {
    "componentModels": {
      "items": [ComponentModel],
      "limit": 123,
      "offset": 123,
      "totalItems": 987
    }
  }
}

components

Description

Retrieve multiple Components.

Response

Returns a PagedComponents!

Arguments
Name Description
componentModelUuid - [UUID] The list of component model UUIDs to filter the components by.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [ComponentOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
systemUuid - [UUID] The list of system UUIDs to filter the components by.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - ComponentQuery Complex filtering over components.

Example

Query
query components(
  $componentModelUuid: [UUID],
  $limit: Int,
  $offset: Int,
  $orderBy: [ComponentOrderByQuery],
  $status: [Status],
  $systemUuid: [UUID],
  $uuid: [UUID],
  $where: ComponentQuery
) {
  components(
    componentModelUuid: $componentModelUuid,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    systemUuid: $systemUuid,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...ComponentFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "componentModelUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 987,
  "offset": 987,
  "orderBy": [ComponentOrderByQuery],
  "status": ["ACTIVATED"],
  "systemUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": ComponentQuery
}
Response
{
  "data": {
    "components": {
      "items": [Component],
      "limit": 987,
      "offset": 123,
      "totalItems": 987
    }
  }
}

currentDatapoints

Description

Get the latest Datapoints with various filters.

Response

Returns a PagedDatapoints!

Arguments
Name Description
after - String The cursor after which items should be returned.
characteristicCode - [String] The list of Characteristic codes by which to filter fetched items.
characteristicUuid - [UUID] The list of Characteristic UUIDs by which to filter fetched items.
componentCode - [String] The list of Component codes by which to filter fetched items.
componentModelCode - [String] The list of Component Model codes by which to filter fetched items.
componentModelUuid - [UUID] The list of Component Model UUIDs by which to filter fetched items.
componentUuid - [UUID] The list of Component UUIDs by which to filter fetched items.
from - DateTime The inclusive start of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the previous possible time. A grid of 1h will snap to the previous full hour A grid of 1d snaps to the previous midnight in the UTC time zone A grid of 1w snaps to the previous midnight on Monday in the UTC time zone All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with a time of 12:12:00 matches to 12:00:00 and returns all elements from 12:00:00 to 12:15:00 in this grid.
limit - Int The maximum number of items which should be returned.
orderBy - [DatapointOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
round - Int Optional Integer. Configures the rounding of raw values before being counted. round specifies the number decimals to use when rounding the number. 0 rounds to the nearest integer. Optional, defaults to no rounding applied.
serviceCode - [String] The list of Service codes by which to filter fetched items.
serviceIndex - [Int] A list of Service & ComponentModel relationship indices to filter retrieved items.
serviceUuid - [UUID] A list of Service UUIDs by which to filter retrieved items.
systemCode - [String] The list of System codes by which to filter fetched items.
systemUuid - [UUID] The list of System UUIDs by which to filter fetched items.
timeStreamUuid - [UUID] The list of TimeStream UUIDs by which to filter fetched items.
to - DateTime The exclusive end of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the next possible time. A grid of 1h will snap to the next full hour A grid of 1d snaps to next midnight in the UTC time zone A grid of 1w snaps to the next midnight on Monday in the UTC time zone. All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with an to time of 12:12:00 matches to 12:15:00 and returns all elements from 12:00:00 to 12:15:00 in the last grid.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - DatapointsWhereQuery Complex filtering over Datapoints

Example

Query
query currentDatapoints(
  $after: String,
  $characteristicCode: [String],
  $characteristicUuid: [UUID],
  $componentCode: [String],
  $componentModelCode: [String],
  $componentModelUuid: [UUID],
  $componentUuid: [UUID],
  $from: DateTime,
  $limit: Int,
  $orderBy: [DatapointOrderByQuery],
  $round: Int,
  $serviceCode: [String],
  $serviceIndex: [Int],
  $serviceUuid: [UUID],
  $systemCode: [String],
  $systemUuid: [UUID],
  $timeStreamUuid: [UUID],
  $to: DateTime,
  $uuid: [UUID],
  $where: DatapointsWhereQuery
) {
  currentDatapoints(
    after: $after,
    characteristicCode: $characteristicCode,
    characteristicUuid: $characteristicUuid,
    componentCode: $componentCode,
    componentModelCode: $componentModelCode,
    componentModelUuid: $componentModelUuid,
    componentUuid: $componentUuid,
    from: $from,
    limit: $limit,
    orderBy: $orderBy,
    round: $round,
    serviceCode: $serviceCode,
    serviceIndex: $serviceIndex,
    serviceUuid: $serviceUuid,
    systemCode: $systemCode,
    systemUuid: $systemUuid,
    timeStreamUuid: $timeStreamUuid,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...DatapointFragment
    }
    limit
  }
}
Variables
{
  "after": "abc123",
  "characteristicCode": ["xyz789"],
  "characteristicUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentCode": ["xyz789"],
  "componentModelCode": ["abc123"],
  "componentModelUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "from": "2007-12-03T10:15:30Z",
  "limit": 987,
  "orderBy": [DatapointOrderByQuery],
  "round": 987,
  "serviceCode": ["abc123"],
  "serviceIndex": [987],
  "serviceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "systemCode": ["xyz789"],
  "systemUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "timeStreamUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": DatapointsWhereQuery
}
Response
{
  "data": {
    "currentDatapoints": {
      "cursor": "xyz789",
      "items": [Datapoint],
      "limit": 123
    }
  }
}

currentDomain

Description

Retrieve information about the Domain associated with the current User's tenant. A Domain is an isolated environment for an individual tenant, normally a company or a team. This endpoint can be used to obtain information about the current tenant's Domain within DRIVR.

Response

Returns a Domain!

Example

Query
query currentDomain {
  currentDomain {
    authenticationMethods {
      ...PagedAuthenticationMethodsFragment
    }
    componentModels {
      ...PagedComponentModelsFragment
    }
    createdAt
    domainFeatures {
      ...PagedDomainFeaturesFragment
    }
    hostNames
    name
    organizations {
      ...PagedOrganizationsFragment
    }
    owner {
      ... on Organization {
        ...OrganizationFragment
      }
      ... on User {
        ...UserFragment
      }
    }
    ownerUuid
    roleAssignments {
      ...PagedRoleAssignmentsFragment
    }
    slug
    status
    systems {
      ...PagedSystemsFragment
    }
    updatedAt
    users {
      ...PagedUsersFragment
    }
    uuid
  }
}
Response
{
  "data": {
    "currentDomain": {
      "authenticationMethods": PagedAuthenticationMethods,
      "componentModels": PagedComponentModels,
      "createdAt": "2007-12-03T10:15:30Z",
      "domainFeatures": PagedDomainFeatures,
      "hostNames": ["xyz789"],
      "name": "abc123",
      "organizations": PagedOrganizations,
      "owner": Organization,
      "ownerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "roleAssignments": PagedRoleAssignments,
      "slug": "xyz789",
      "status": "ACTIVATED",
      "systems": PagedSystems,
      "updatedAt": "2007-12-03T10:15:30Z",
      "users": PagedUsers,
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

dataSource

Description

Retrieve a specific DataSource entity by its UUID.

Response

Returns a DataSource!

Arguments
Name Description
uuid - UUID! The UUID of the DataSource entity.

Example

Query
query dataSource($uuid: UUID!) {
  dataSource(uuid: $uuid) {
    code
    createdAt
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    name
    reference
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "dataSource": {
      "code": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "name": "abc123",
      "reference": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

dataSources

Description

Retrieve multiple DataSources by specifying one or more codes to filter by.

Response

Returns a PagedDataSources!

Arguments
Name Description
code - [String] The codes used to filter the DataSource.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [DataSourceOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - DataSourceQuery Complex filtering over data sources.

Example

Query
query dataSources(
  $code: [String],
  $limit: Int,
  $offset: Int,
  $orderBy: [DataSourceOrderByQuery],
  $uuid: [UUID],
  $where: DataSourceQuery
) {
  dataSources(
    code: $code,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...DataSourceFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "code": ["xyz789"],
  "limit": 987,
  "offset": 123,
  "orderBy": [DataSourceOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": DataSourceQuery
}
Response
{
  "data": {
    "dataSources": {
      "items": [DataSource],
      "limit": 123,
      "offset": 123,
      "totalItems": 987
    }
  }
}

datapoints

Description

Get all Datapoints with various filters.

Response

Returns a PagedDatapoints!

Arguments
Name Description
after - String The cursor after which items should be returned.
characteristicCode - [String] The list of Characteristic codes by which to filter fetched items.
characteristicUuid - [UUID] The list of Characteristic UUIDs by which to filter fetched items.
componentCode - [String] The list of Component codes by which to filter fetched items.
componentModelCode - [String] The list of Component Model codes by which to filter fetched items.
componentModelUuid - [UUID] The list of Component Model UUIDs by which to filter fetched items.
componentUuid - [UUID] The list of Component UUIDs by which to filter fetched items.
from - DateTime The inclusive start of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the previous possible time. A grid of 1h will snap to the previous full hour A grid of 1d snaps to the previous midnight in the UTC time zone A grid of 1w snaps to the previous midnight on Monday in the UTC time zone All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with a time of 12:12:00 matches to 12:00:00 and returns all elements from 12:00:00 to 12:15:00 in this grid.
limit - Int The maximum number of items which should be returned.
orderBy - [DatapointOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
round - Int Optional Integer. Configures the rounding of raw values before being counted. round specifies the number decimals to use when rounding the number. 0 rounds to the nearest integer. Optional, defaults to no rounding applied.
serviceCode - [String] The list of Service codes by which to filter fetched items.
serviceIndex - [Int] A list of Service & ComponentModel relationship indices to filter retrieved items.
serviceUuid - [UUID] A list of Service UUIDs by which to filter retrieved items.
systemCode - [String] The list of System codes by which to filter fetched items.
systemUuid - [UUID] The list of System UUIDs by which to filter fetched items.
timeStreamUuid - [UUID] The list of TimeStream UUIDs by which to filter fetched items.
to - DateTime The exclusive end of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the next possible time. A grid of 1h will snap to the next full hour A grid of 1d snaps to next midnight in the UTC time zone A grid of 1w snaps to the next midnight on Monday in the UTC time zone. All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with an to time of 12:12:00 matches to 12:15:00 and returns all elements from 12:00:00 to 12:15:00 in the last grid.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - DatapointsWhereQuery Complex filtering over Datapoints

Example

Query
query datapoints(
  $after: String,
  $characteristicCode: [String],
  $characteristicUuid: [UUID],
  $componentCode: [String],
  $componentModelCode: [String],
  $componentModelUuid: [UUID],
  $componentUuid: [UUID],
  $from: DateTime,
  $limit: Int,
  $orderBy: [DatapointOrderByQuery],
  $round: Int,
  $serviceCode: [String],
  $serviceIndex: [Int],
  $serviceUuid: [UUID],
  $systemCode: [String],
  $systemUuid: [UUID],
  $timeStreamUuid: [UUID],
  $to: DateTime,
  $uuid: [UUID],
  $where: DatapointsWhereQuery
) {
  datapoints(
    after: $after,
    characteristicCode: $characteristicCode,
    characteristicUuid: $characteristicUuid,
    componentCode: $componentCode,
    componentModelCode: $componentModelCode,
    componentModelUuid: $componentModelUuid,
    componentUuid: $componentUuid,
    from: $from,
    limit: $limit,
    orderBy: $orderBy,
    round: $round,
    serviceCode: $serviceCode,
    serviceIndex: $serviceIndex,
    serviceUuid: $serviceUuid,
    systemCode: $systemCode,
    systemUuid: $systemUuid,
    timeStreamUuid: $timeStreamUuid,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...DatapointFragment
    }
    limit
  }
}
Variables
{
  "after": "abc123",
  "characteristicCode": ["xyz789"],
  "characteristicUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentCode": ["abc123"],
  "componentModelCode": ["xyz789"],
  "componentModelUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "from": "2007-12-03T10:15:30Z",
  "limit": 987,
  "orderBy": [DatapointOrderByQuery],
  "round": 987,
  "serviceCode": ["abc123"],
  "serviceIndex": [123],
  "serviceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "systemCode": ["abc123"],
  "systemUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "timeStreamUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": DatapointsWhereQuery
}
Response
{
  "data": {
    "datapoints": {
      "cursor": "abc123",
      "items": [Datapoint],
      "limit": 987
    }
  }
}

distinctAggregatedDatapoints

Description

Returns all distinct values for a set of aggregated datapoints.

Arguments
Name Description
after - String The cursor after which items should be returned.
aggregate - ValueAggregate! Specify aggregate function to apply for each grid portion. One of avg, count, sum, min, max, first, last. Only one aggregation is supported per call. Always required.
carryForward - Boolean Add an aggregate datapoint to each grid interval even if no explicit datapoint was published during that interval. In the case of missing datapoints, the last value recorded is carried forward into empty time intervals.
characteristicCode - [String] The list of Characteristic codes by which to filter fetched items.
characteristicUuid - [UUID] The list of Characteristic UUIDs by which to filter fetched items.
componentCode - [String] The list of Component codes by which to filter fetched items.
componentModelCode - [String] The list of Component Model codes by which to filter fetched items.
componentModelUuid - [UUID] The list of Component Model UUIDs by which to filter fetched items.
componentUuid - [UUID] The list of Component UUIDs by which to filter fetched items.
from - DateTime The inclusive start of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the previous possible time. A grid of 1h will snap to the previous full hour A grid of 1d snaps to the previous midnight in the UTC time zone A grid of 1w snaps to the previous midnight on Monday in the UTC time zone All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with a time of 12:12:00 matches to 12:00:00 and returns all elements from 12:00:00 to 12:15:00 in this grid.
grid - Timespan Given a start and end time, a grid is the size of the partitions by which this time period should be divided. It is specified by a timespan in ISO 8601 duration format. If the grid is set, start and end are required. The smallest time unit supported for the grid is second. The largest time unit supported for the grid is week. All grid values must be evenly divisible into the next largest available time unit (minutes, hours, days or weeks). For example, 20s is valid because it can evenly divide into 60 seconds (20 · 3 = 60 seconds = 1 minute). All grid values must be non-zero, non-negative integers. Grid values may be represented in smaller units as long as they evenly divide into the next largest unit. For example, 120s may be used instead of 2m because 120s / 60s = 2m. Grids which are in hours can only be full hours (1-23) (e.g. 1 hour 30 minutes is invalid). Grids which are in days must be full days (1-6) (e.g. 1 day and 3 hours is invalid) Grids which are in weeks cannot have smaller units (days or hours) attached (e.g. 1 week and 1 day is invalid)
group - DistinctDatapointGroup Group results by object. One of CHARACTERISTIC or TIME_STREAM. Defaults to CHARACTERISTIC if not provided.
limit - Int The maximum number of items which should be returned.
listZeroCounts - Boolean Optional Boolean. If set to true, all observed values of the returned page will be listed per grouping/time step. Hence, the resulting distinct value list all observed values with a possible count of 0. Default is False, which omits all distinct values with a count of 0.
orderBy - [DatapointOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
round - Int Optional Integer. Configures the rounding of aggregate values before being counted. round specifies the number decimals to use when rounding the number. 0 rounds to the nearest integer. Optional, defaults to no rounding applied.
serviceCode - [String] The list of Service codes by which to filter fetched items.
serviceIndex - [Int] A list of Service & ComponentModel relationship indices to filter retrieved items.
serviceUuid - [UUID] A list of Service UUIDs by which to filter retrieved items.
systemCode - [String] The list of System codes by which to filter fetched items.
systemUuid - [UUID] The list of System UUIDs by which to filter fetched items.
timeStreamUuid - [UUID] The list of TimeStream UUIDs by which to filter fetched items.
to - DateTime The exclusive end of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the next possible time. A grid of 1h will snap to the next full hour A grid of 1d snaps to next midnight in the UTC time zone A grid of 1w snaps to the next midnight on Monday in the UTC time zone. All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with an to time of 12:12:00 matches to 12:15:00 and returns all elements from 12:00:00 to 12:15:00 in the last grid.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - DistinctAggregatedDatapointsWhereQuery Complex nested filters on aggregated distinct datapoints allowing to query by attached entities.

Example

Query
query distinctAggregatedDatapoints(
  $after: String,
  $aggregate: ValueAggregate!,
  $carryForward: Boolean,
  $characteristicCode: [String],
  $characteristicUuid: [UUID],
  $componentCode: [String],
  $componentModelCode: [String],
  $componentModelUuid: [UUID],
  $componentUuid: [UUID],
  $from: DateTime,
  $grid: Timespan,
  $group: DistinctDatapointGroup,
  $limit: Int,
  $listZeroCounts: Boolean,
  $orderBy: [DatapointOrderByQuery],
  $round: Int,
  $serviceCode: [String],
  $serviceIndex: [Int],
  $serviceUuid: [UUID],
  $systemCode: [String],
  $systemUuid: [UUID],
  $timeStreamUuid: [UUID],
  $to: DateTime,
  $uuid: [UUID],
  $where: DistinctAggregatedDatapointsWhereQuery
) {
  distinctAggregatedDatapoints(
    after: $after,
    aggregate: $aggregate,
    carryForward: $carryForward,
    characteristicCode: $characteristicCode,
    characteristicUuid: $characteristicUuid,
    componentCode: $componentCode,
    componentModelCode: $componentModelCode,
    componentModelUuid: $componentModelUuid,
    componentUuid: $componentUuid,
    from: $from,
    grid: $grid,
    group: $group,
    limit: $limit,
    listZeroCounts: $listZeroCounts,
    orderBy: $orderBy,
    round: $round,
    serviceCode: $serviceCode,
    serviceIndex: $serviceIndex,
    serviceUuid: $serviceUuid,
    systemCode: $systemCode,
    systemUuid: $systemUuid,
    timeStreamUuid: $timeStreamUuid,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...DistinctAggregatedDatapointsFragment
    }
    limit
  }
}
Variables
{
  "after": "abc123",
  "aggregate": "AVG",
  "carryForward": false,
  "characteristicCode": ["abc123"],
  "characteristicUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentCode": ["abc123"],
  "componentModelCode": ["xyz789"],
  "componentModelUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "from": "2007-12-03T10:15:30Z",
  "grid": Timespan,
  "group": "CHARACTERISTIC",
  "limit": 987,
  "listZeroCounts": true,
  "orderBy": [DatapointOrderByQuery],
  "round": 987,
  "serviceCode": ["abc123"],
  "serviceIndex": [123],
  "serviceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "systemCode": ["xyz789"],
  "systemUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "timeStreamUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": DistinctAggregatedDatapointsWhereQuery
}
Response
{
  "data": {
    "distinctAggregatedDatapoints": {
      "cursor": "abc123",
      "items": [DistinctAggregatedDatapoints],
      "limit": 987
    }
  }
}

distinctDatapoints

Description

Returns a count for distinct Datapoints. It allows for filtering and sorting of data points by various parameters.

Response

Returns a PagedDistinctDatapoints!

Arguments
Name Description
after - String The cursor after which items should be returned.
carryForward - Boolean Specifies whether to include a Datapoint for each grid interval in the response even if no actual Datapoints fall into the interval. In this case, the last value seen is carried forward. A from, to, and grid parameter must be set if carry_forward is set to true. The default value is false.
characteristicCode - [String] The list of Characteristic codes by which to filter fetched items.
characteristicUuid - [UUID] The list of Characteristic UUIDs by which to filter fetched items.
componentCode - [String] The list of Component codes by which to filter fetched items.
componentModelCode - [String] The list of Component Model codes by which to filter fetched items.
componentModelUuid - [UUID] The list of Component Model UUIDs by which to filter fetched items.
componentUuid - [UUID] The list of Component UUIDs by which to filter fetched items.
from - DateTime The inclusive start of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the previous possible time. A grid of 1h will snap to the previous full hour A grid of 1d snaps to the previous midnight in the UTC time zone A grid of 1w snaps to the previous midnight on Monday in the UTC time zone All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with a time of 12:12:00 matches to 12:00:00 and returns all elements from 12:00:00 to 12:15:00 in this grid.
grid - Timespan Given a start and end time, a grid is the size of the partitions by which this time period should be divided. It is specified by a timespan in ISO 8601 duration format. If the grid is set, start and end are required. The smallest time unit supported for the grid is second. The largest time unit supported for the grid is week. All grid values must be evenly divisible into the next largest available time unit (minutes, hours, days or weeks). For example, 20s is valid because it can evenly divide into 60 seconds (20 · 3 = 60 seconds = 1 minute). All grid values must be non-zero, non-negative integers. Grid values may be represented in smaller units as long as they evenly divide into the next largest unit. For example, 120s may be used instead of 2m because 120s / 60s = 2m. Grids which are in hours can only be full hours (1-23) (e.g. 1 hour 30 minutes is invalid). Grids which are in days must be full days (1-6) (e.g. 1 day and 3 hours is invalid) Grids which are in weeks cannot have smaller units (days or hours) attached (e.g. 1 week and 1 day is invalid)
group - DistinctDatapointGroup Specifies the type of object to group the results by. Accepted values are CHARACTERISTIC or TIME_STREAM. The default value is CHARACTERISTIC if this parameter is not provided.
limit - Int The maximum number of items which should be returned.
listZeroCounts - Boolean Optional Boolean. If set to true, all observed values of the returned page will be listed per grouping/time step. Hence, the resulting distinct value list all observed values with a possible count of 0. Default is False, which omits all distinct values with a count of 0.
orderBy - [DatapointOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
round - Int Optional Integer. Configures the rounding of raw values before being counted. round specifies the number decimals to use when rounding the number. 0 rounds to the nearest integer. Optional, defaults to no rounding applied.
serviceCode - [String] The list of Service codes by which to filter fetched items.
serviceIndex - [Int] A list of Service & ComponentModel relationship indices to filter retrieved items.
serviceUuid - [UUID] A list of Service UUIDs by which to filter retrieved items.
systemCode - [String] The list of System codes by which to filter fetched items.
systemUuid - [UUID] The list of System UUIDs by which to filter fetched items.
timeStreamUuid - [UUID] The list of TimeStream UUIDs by which to filter fetched items.
to - DateTime The exclusive end of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the next possible time. A grid of 1h will snap to the next full hour A grid of 1d snaps to next midnight in the UTC time zone A grid of 1w snaps to the next midnight on Monday in the UTC time zone. All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with an to time of 12:12:00 matches to 12:15:00 and returns all elements from 12:00:00 to 12:15:00 in the last grid.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - DistinctDatapointsWhereQuery Specifies complex nested filters on distinct datapoints allowing to query by attached entities.

Example

Query
query distinctDatapoints(
  $after: String,
  $carryForward: Boolean,
  $characteristicCode: [String],
  $characteristicUuid: [UUID],
  $componentCode: [String],
  $componentModelCode: [String],
  $componentModelUuid: [UUID],
  $componentUuid: [UUID],
  $from: DateTime,
  $grid: Timespan,
  $group: DistinctDatapointGroup,
  $limit: Int,
  $listZeroCounts: Boolean,
  $orderBy: [DatapointOrderByQuery],
  $round: Int,
  $serviceCode: [String],
  $serviceIndex: [Int],
  $serviceUuid: [UUID],
  $systemCode: [String],
  $systemUuid: [UUID],
  $timeStreamUuid: [UUID],
  $to: DateTime,
  $uuid: [UUID],
  $where: DistinctDatapointsWhereQuery
) {
  distinctDatapoints(
    after: $after,
    carryForward: $carryForward,
    characteristicCode: $characteristicCode,
    characteristicUuid: $characteristicUuid,
    componentCode: $componentCode,
    componentModelCode: $componentModelCode,
    componentModelUuid: $componentModelUuid,
    componentUuid: $componentUuid,
    from: $from,
    grid: $grid,
    group: $group,
    limit: $limit,
    listZeroCounts: $listZeroCounts,
    orderBy: $orderBy,
    round: $round,
    serviceCode: $serviceCode,
    serviceIndex: $serviceIndex,
    serviceUuid: $serviceUuid,
    systemCode: $systemCode,
    systemUuid: $systemUuid,
    timeStreamUuid: $timeStreamUuid,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...DistinctDatapointsFragment
    }
    limit
  }
}
Variables
{
  "after": "abc123",
  "carryForward": true,
  "characteristicCode": ["xyz789"],
  "characteristicUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentCode": ["abc123"],
  "componentModelCode": ["abc123"],
  "componentModelUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "from": "2007-12-03T10:15:30Z",
  "grid": Timespan,
  "group": "CHARACTERISTIC",
  "limit": 123,
  "listZeroCounts": true,
  "orderBy": [DatapointOrderByQuery],
  "round": 123,
  "serviceCode": ["xyz789"],
  "serviceIndex": [987],
  "serviceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "systemCode": ["abc123"],
  "systemUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "timeStreamUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": DistinctDatapointsWhereQuery
}
Response
{
  "data": {
    "distinctDatapoints": {
      "cursor": "xyz789",
      "items": [DistinctDatapoints],
      "limit": 987
    }
  }
}

distinctMetadataValues

Description

Retrieve all distinct metadata values for the given metadata types.

Response

Returns a PagedDistinctMetadataValues!

Arguments
Name Description
after - String The cursor after which items should be returned.
entityType - MetadataTypeEntityTypes The entity type for which the distinct metadata values should be calculated.
entityUuid - [UUID] The list of entity UUIDs for which the distinct metadata values should be returned.
limit - Int The maximum number of items which should be returned.
metadataTypeUuid - [UUID] The list of MetadataType UUIDs for which the distinct metadata values should be calculated.
orderBy - [DistinctMetadataOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
where - DistinctMetadataValueQuery Complex filtering over distinct metadata values.

Example

Query
query distinctMetadataValues(
  $after: String,
  $entityType: MetadataTypeEntityTypes,
  $entityUuid: [UUID],
  $limit: Int,
  $metadataTypeUuid: [UUID],
  $orderBy: [DistinctMetadataOrderByQuery],
  $where: DistinctMetadataValueQuery
) {
  distinctMetadataValues(
    after: $after,
    entityType: $entityType,
    entityUuid: $entityUuid,
    limit: $limit,
    metadataTypeUuid: $metadataTypeUuid,
    orderBy: $orderBy,
    where: $where
  ) {
    cursor
    items {
      ...DistinctMetadataValueFragment
    }
    limit
  }
}
Variables
{
  "after": "abc123",
  "entityType": "CHARACTERISTIC",
  "entityUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 123,
  "metadataTypeUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "orderBy": [DistinctMetadataOrderByQuery],
  "where": DistinctMetadataValueQuery
}
Response
{
  "data": {
    "distinctMetadataValues": {
      "cursor": "xyz789",
      "items": [DistinctMetadataValue],
      "limit": 987
    }
  }
}

domainFeature

Description

The DomainFeature query retrieves a specific DomainFeature by its slug. DomainFeatures are associated with a Domain and represent a global setting within DRIVR which can be enabled or disabled.

Response

Returns a DomainFeature!

Arguments
Name Description
slug - DomainFeatureSlug! A slug is a unique identifier assigned to a specific DomainFeature.

Example

Query
query domainFeature($slug: DomainFeatureSlug!) {
  domainFeature(slug: $slug) {
    domain {
      ...DomainFragment
    }
    domainUuid
    enabled
    slug
  }
}
Variables
{"slug": "DELETE_ARCHIVE_ORGANIZATION_USERS"}
Response
{
  "data": {
    "domainFeature": {
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "enabled": true,
      "slug": "DELETE_ARCHIVE_ORGANIZATION_USERS"
    }
  }
}

domainFeatures

Description

This endpoint returns multiple DomainFeatures for the current Domain based on filter criteria specified as arguments. Each DomainFeature represents a global setting which can be enabled or disabled. For example, a DomainFeature can represent a requirement for users to have an email.

Response

Returns a PagedDomainFeatures!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [DomainFeatureOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
slug - DomainFeatureSlug The unique identifier by which to filter DomainFeatures. If specified, only DomainFeatures with the given slug will be returned.
where - DomainFeatureQuery A complex filter allowing for more granular filtering over DomainFeatures. Use this filter to build more complex queries for retrieving DomainFeatures.

Example

Query
query domainFeatures(
  $limit: Int,
  $offset: Int,
  $orderBy: [DomainFeatureOrderByQuery],
  $slug: DomainFeatureSlug,
  $where: DomainFeatureQuery
) {
  domainFeatures(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    slug: $slug,
    where: $where
  ) {
    items {
      ...DomainFeatureFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 987,
  "offset": 123,
  "orderBy": [DomainFeatureOrderByQuery],
  "slug": "DELETE_ARCHIVE_ORGANIZATION_USERS",
  "where": DomainFeatureQuery
}
Response
{
  "data": {
    "domainFeatures": {
      "items": [DomainFeature],
      "limit": 123,
      "offset": 123,
      "totalItems": 987
    }
  }
}

event

Description

Get a specific Event by UUID.

Response

Returns an Event!

Arguments
Name Description
uuid - UUID! The UUID of the Event.

Example

Query
query event($uuid: UUID!) {
  event(uuid: $uuid) {
    acknowledged
    acks {
      ...PagedEventAcksFragment
    }
    createdAt
    endTime
    entity {
      ... on Component {
        ...ComponentFragment
      }
      ... on System {
        ...SystemFragment
      }
    }
    entityUuid
    eventModel {
      ...EventModelFragment
    }
    eventModelUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    status
    time
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "event": {
      "acknowledged": true,
      "acks": PagedEventAcks,
      "createdAt": "2007-12-03T10:15:30Z",
      "endTime": "2007-12-03T10:15:30Z",
      "entity": Component,
      "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "eventModel": EventModel,
      "eventModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "status": "ACTIVE",
      "time": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

eventModel

Description

Get a single EventModel by its UUID. An EventModel acts as a template for DRIVR Events and is used to model an Event on different types of entities.

Response

Returns an EventModel!

Arguments
Name Description
uuid - UUID! The UUID of the EventModel.

Example

Query
query eventModel($uuid: UUID!) {
  eventModel(uuid: $uuid) {
    code
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    entityType
    eventLevel
    eventModelLinks {
      ...PagedEventModelLinksFragment
    }
    eventType
    limitToPrototypes
    message
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "eventModel": {
      "code": "abc123",
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "entityType": "COMPONENT",
      "eventLevel": "ERROR",
      "eventModelLinks": PagedEventModelLinks,
      "eventType": "RANGED",
      "limitToPrototypes": false,
      "message": "xyz789",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

eventModels

Description

Retrieve a list of EventModels that match the specified filters.

Response

Returns a PagedEventModels!

Arguments
Name Description
code - [String] Filter the EventModels by code. Can be provided as a single string, or a list of strings.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [EventModelOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - EventModelQuery Filter the EventModels by complex condition. This can be one or multiple conditions, using field names as keys, and its specific conditions as the value of that key.

Example

Query
query eventModels(
  $code: [String],
  $limit: Int,
  $offset: Int,
  $orderBy: [EventModelOrderByQuery],
  $uuid: [UUID],
  $where: EventModelQuery
) {
  eventModels(
    code: $code,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...EventModelFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "code": ["xyz789"],
  "limit": 987,
  "offset": 123,
  "orderBy": [EventModelOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": EventModelQuery
}
Response
{
  "data": {
    "eventModels": {
      "items": [EventModel],
      "limit": 987,
      "offset": 987,
      "totalItems": 123
    }
  }
}

events

Description

Get multiple Events.

Response

Returns a PagedEvents!

Arguments
Name Description
after - String The cursor after which items should be returned.
entityUuid - UUID The entity uuid by which to filter events.
eventModelUuid - UUID The event model uuid by which to filter events.
from - DateTime The inclusive from of the window which data should be requested.
limit - Int The maximum number of items which should be returned.
orderBy - [EventOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [EventStatus] The status by which to filter the Events.
to - DateTime The exclusive to of the window which data should be requested
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - EventQuery Complex filtering over events

Example

Query
query events(
  $after: String,
  $entityUuid: UUID,
  $eventModelUuid: UUID,
  $from: DateTime,
  $limit: Int,
  $orderBy: [EventOrderByQuery],
  $status: [EventStatus],
  $to: DateTime,
  $uuid: [UUID],
  $where: EventQuery
) {
  events(
    after: $after,
    entityUuid: $entityUuid,
    eventModelUuid: $eventModelUuid,
    from: $from,
    limit: $limit,
    orderBy: $orderBy,
    status: $status,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...EventFragment
    }
    limit
  }
}
Variables
{
  "after": "xyz789",
  "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "eventModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "from": "2007-12-03T10:15:30Z",
  "limit": 987,
  "orderBy": [EventOrderByQuery],
  "status": ["ACTIVE"],
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": EventQuery
}
Response
{
  "data": {
    "events": {
      "cursor": "abc123",
      "items": [Event],
      "limit": 987
    }
  }
}

integrations

Description

Retrieves a paged list of Integrations available in DRIVR.

Response

Returns a PagedIntegrations!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [IntegrationOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - IntegrationQuery Complex filtering over integrations.

Example

Query
query integrations(
  $limit: Int,
  $offset: Int,
  $orderBy: [IntegrationOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: IntegrationQuery
) {
  integrations(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...IntegrationFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 123,
  "offset": 987,
  "orderBy": [IntegrationOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": IntegrationQuery
}
Response
{
  "data": {
    "integrations": {
      "items": [Integration],
      "limit": 987,
      "offset": 123,
      "totalItems": 123
    }
  }
}

issuer

Description

Returns the details of the Issuer with the provided uuid.

Response

Returns an Issuer!

Arguments
Name Description
uuid - UUID! The uuid of the Issuer to be returned.

Example

Query
query issuer($uuid: UUID!) {
  issuer(uuid: $uuid) {
    ca
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    name
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "issuer": {
      "ca": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "name": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

issuers

Description

Retrieves a paged list of Issuers available in DRIVR.

Response

Returns a PagedIssuers!

Arguments
Name Description
certificateUuid - UUID The certificate UUID signed by the Issuer object to be retrieved.
limit - Int The maximum number of items which should be returned.
name - String The name of the Issuer object to be retrieved.
offset - Int The offset of items which should be returned.
orderBy - [IssuerOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - IssuerQuery Complex filtering over Issuers.

Example

Query
query issuers(
  $certificateUuid: UUID,
  $limit: Int,
  $name: String,
  $offset: Int,
  $orderBy: [IssuerOrderByQuery],
  $uuid: [UUID],
  $where: IssuerQuery
) {
  issuers(
    certificateUuid: $certificateUuid,
    limit: $limit,
    name: $name,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...IssuerFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "certificateUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "limit": 987,
  "name": "abc123",
  "offset": 123,
  "orderBy": [IssuerOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": IssuerQuery
}
Response
{
  "data": {
    "issuers": {
      "items": [Issuer],
      "limit": 987,
      "offset": 123,
      "totalItems": 123
    }
  }
}

loginMethods

Description

Returns a list of paged LoginMethods matching a given set of filters and ordering.

Response

Returns a PagedLoginMethods!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [LoginMethodOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - LoginMethodQuery The set of filters to apply for retrieving paged LoginMethods.

Example

Query
query loginMethods(
  $limit: Int,
  $offset: Int,
  $orderBy: [LoginMethodOrderByQuery],
  $uuid: [UUID],
  $where: LoginMethodQuery
) {
  loginMethods(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...BaseLoginMethodFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 987,
  "offset": 123,
  "orderBy": [LoginMethodOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": LoginMethodQuery
}
Response
{
  "data": {
    "loginMethods": {
      "items": [BaseLoginMethod],
      "limit": 123,
      "offset": 987,
      "totalItems": 123
    }
  }
}

machineUser

Description

Returns the details of the MachineUser with the provided uuid.

Response

Returns a MachineUser!

Arguments
Name Description
uuid - UUID! The uuid of the MachineUser to be returned.

Example

Query
query machineUser($uuid: UUID!) {
  machineUser(uuid: $uuid) {
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    roleAssignments {
      ...PagedRoleAssignmentsFragment
    }
    status
    updatedAt
    username
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "machineUser": {
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "roleAssignments": PagedRoleAssignments,
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "username": "xyz789",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

machineUsers

Description

Returns a list of paged MachineUsers matching a given set of filters and ordering.

Response

Returns a PagedMachineUsers!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [MachineUserOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - MachineUserQuery The set of filters to apply for retrieving paged MachineUsers.

Example

Query
query machineUsers(
  $limit: Int,
  $offset: Int,
  $orderBy: [MachineUserOrderByQuery],
  $uuid: [UUID],
  $where: MachineUserQuery
) {
  machineUsers(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...MachineUserFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 987,
  "offset": 987,
  "orderBy": [MachineUserOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": MachineUserQuery
}
Response
{
  "data": {
    "machineUsers": {
      "items": [MachineUser],
      "limit": 987,
      "offset": 987,
      "totalItems": 987
    }
  }
}

metadataType

Description

Retrieve a single MetadataType by specifying its UUID.

Response

Returns a MetadataType!

Arguments
Name Description
uuid - UUID! The UUID of the MetadataType to be retrieved.

Example

Query
query metadataType($uuid: UUID!) {
  metadataType(uuid: $uuid) {
    createdAt
    dataType
    description
    distinctValues {
      ...PagedDistinctMetadataValuesFragment
    }
    entityType
    key
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "metadataType": {
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BOOLEAN",
      "description": "abc123",
      "distinctValues": PagedDistinctMetadataValues,
      "entityType": "CHARACTERISTIC",
      "key": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

metadataTypes

Description

Retrieve a list of MetadataType entities and apply filters to narrow down the search results.

Response

Returns a PagedMetadataTypes!

Arguments
Name Description
entityType - [MetadataTypeEntityTypes] An array of entity types to filter metadata fields by.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [MetadataTypeOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - MetadataTypeQuery Complex filtering of MetadataType entities.

Example

Query
query metadataTypes(
  $entityType: [MetadataTypeEntityTypes],
  $limit: Int,
  $offset: Int,
  $orderBy: [MetadataTypeOrderByQuery],
  $uuid: [UUID],
  $where: MetadataTypeQuery
) {
  metadataTypes(
    entityType: $entityType,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...MetadataTypeFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "entityType": ["CHARACTERISTIC"],
  "limit": 987,
  "offset": 123,
  "orderBy": [MetadataTypeOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": MetadataTypeQuery
}
Response
{
  "data": {
    "metadataTypes": {
      "items": [MetadataType],
      "limit": 987,
      "offset": 123,
      "totalItems": 987
    }
  }
}

meteringRecords

Description

Retrieve multiple MeteringRecords.

Response

Returns a PagedMeteringRecords!

Arguments
Name Description
entityType - [MeteringRecordEntityType] An array of entity types to filter metering records by.
entityUuid - UUID The entity uuid by which to filter metering records.
eventType - [MeteringRecordEventType] An array of event types to filter metering records by.
from - DateTime The inclusive from of the window which data should be requested.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [MeteringRecordOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
resolution - MeteringRecordResolution! The resolution of metering records to query.
to - DateTime The exclusive to of the window which data should be requested
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - MeteringRecordBaseQuery Complex filtering over MeteringRecords.

Example

Query
query meteringRecords(
  $entityType: [MeteringRecordEntityType],
  $entityUuid: UUID,
  $eventType: [MeteringRecordEventType],
  $from: DateTime,
  $limit: Int,
  $offset: Int,
  $orderBy: [MeteringRecordOrderByQuery],
  $resolution: MeteringRecordResolution!,
  $to: DateTime,
  $uuid: [UUID],
  $where: MeteringRecordBaseQuery
) {
  meteringRecords(
    entityType: $entityType,
    entityUuid: $entityUuid,
    eventType: $eventType,
    from: $from,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    resolution: $resolution,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...MeteringRecordFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "entityType": ["DOMAIN"],
  "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "eventType": ["DATAPOINT_CREATED"],
  "from": "2007-12-03T10:15:30Z",
  "limit": 123,
  "offset": 987,
  "orderBy": [MeteringRecordOrderByQuery],
  "resolution": "DAILY",
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": MeteringRecordBaseQuery
}
Response
{
  "data": {
    "meteringRecords": {
      "items": [MeteringRecord],
      "limit": 123,
      "offset": 123,
      "totalItems": 123
    }
  }
}

organization

Description

This endpoint retrieves a single Organization by UUID.

Response

Returns an Organization!

Arguments
Name Description
uuid - UUID! The UUID of the Organization to retrieve.

Example

Query
query organization($uuid: UUID!) {
  organization(uuid: $uuid) {
    alias
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    owner {
      ...UserFragment
    }
    ownerUuid
    roleAssignments {
      ...PagedRoleAssignmentsFragment
    }
    sources {
      ...PagedOrganizationSourcesFragment
    }
    status
    systems {
      ...PagedSystemsFragment
    }
    updatedAt
    users {
      ...PagedUsersFragment
    }
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "organization": {
      "alias": "abc123",
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "xyz789",
      "owner": User,
      "ownerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "roleAssignments": PagedRoleAssignments,
      "sources": PagedOrganizationSources,
      "status": "ACTIVATED",
      "systems": PagedSystems,
      "updatedAt": "2007-12-03T10:15:30Z",
      "users": PagedUsers,
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

organizationSources

Description

Find OrganizationSources by Organization UUIDs and/or DataSource UUIDs. An OrganizationSource is a link to an external system where the Organization was exported from, e.g. an Active Directory.

Response

Returns a PagedOrganizationSources!

Arguments
Name Description
dataSourceUuid - [UUID] The list of UUIDs of DataSources from which the OrganizationSources were exported.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [OrganizationSourceOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
organizationUuid - [UUID] The list of UUIDs of the Organizations to which the fetched items belong to.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - OrganizationSourceQuery Complex filtering over organization sources.

Example

Query
query organizationSources(
  $dataSourceUuid: [UUID],
  $limit: Int,
  $offset: Int,
  $orderBy: [OrganizationSourceOrderByQuery],
  $organizationUuid: [UUID],
  $uuid: [UUID],
  $where: OrganizationSourceQuery
) {
  organizationSources(
    dataSourceUuid: $dataSourceUuid,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    organizationUuid: $organizationUuid,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...OrganizationSourceFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "dataSourceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 123,
  "offset": 123,
  "orderBy": [OrganizationSourceOrderByQuery],
  "organizationUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": OrganizationSourceQuery
}
Response
{
  "data": {
    "organizationSources": {
      "items": [OrganizationSource],
      "limit": 123,
      "offset": 123,
      "totalItems": 987
    }
  }
}

organizations

Description

This endpoint returns multiple Organizations based on filter criteria specified as arguments.

Response

Returns a PagedOrganizations!

Arguments
Name Description
alias - String Filter Organizations by alias.
limit - Int The maximum number of items which should be returned.
name - String Filter Organizations by name.
offset - Int The offset of items which should be returned.
orderBy - [OrganizationOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - OrganizationQuery Complex filtering over Organizations.

Example

Query
query organizations(
  $alias: String,
  $limit: Int,
  $name: String,
  $offset: Int,
  $orderBy: [OrganizationOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: OrganizationQuery
) {
  organizations(
    alias: $alias,
    limit: $limit,
    name: $name,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...OrganizationFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "alias": "abc123",
  "limit": 987,
  "name": "abc123",
  "offset": 987,
  "orderBy": [OrganizationOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": OrganizationQuery
}
Response
{
  "data": {
    "organizations": {
      "items": [Organization],
      "limit": 987,
      "offset": 123,
      "totalItems": 123
    }
  }
}

role

Description

Retrieve a specific Role by its UUID.

Response

Returns a Role!

Arguments
Name Description
uuid - UUID! The UUID of the Role to be retrieved.

Example

Query
query role($uuid: UUID!) {
  role(uuid: $uuid) {
    createdAt
    domainUuid
    entityType
    name
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "role": {
      "createdAt": "2007-12-03T10:15:30Z",
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "entityType": "DOMAIN",
      "name": "abc123",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

roleAssignment

Description

Returns the details of a single RoleAssignment specified by uuid.

Response

Returns a RoleAssignment!

Arguments
Name Description
uuid - UUID! The uuid of the RoleAssignment to retrieve details for.

Example

Query
query roleAssignment($uuid: UUID!) {
  roleAssignment(uuid: $uuid) {
    assignee {
      ... on MachineUser {
        ...MachineUserFragment
      }
      ... on Organization {
        ...OrganizationFragment
      }
      ... on User {
        ...UserFragment
      }
    }
    assigneeUuid
    createdAt
    entity {
      ... on Domain {
        ...DomainFragment
      }
      ... on System {
        ...SystemFragment
      }
    }
    entityUuid
    role {
      ...RoleFragment
    }
    roleUuid
    sources {
      ...PagedRoleAssignmentSourcesFragment
    }
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "roleAssignment": {
      "assignee": MachineUser,
      "assigneeUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "entity": Domain,
      "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "role": Role,
      "roleUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "sources": PagedRoleAssignmentSources,
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

roleAssignmentSources

Description

Retrieve a list of RoleAssignmentSource entities that match the specified filter criteria, along with contextual metadata.

Response

Returns a PagedRoleAssignmentSources!

Arguments
Name Description
dataSourceUuid - [UUID] A list of DataSource UUIDs used to filter the retrieved RoleAssignmentSource entities.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [RoleAssignmentSourceOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
roleAssignmentUuid - [UUID] A list of RoleAssignment UUIDs used to filter the retrieved RoleAssignmentSource entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - RoleAssignmentSourceQuery RoleAssignmentSourceQuery provides complex filter over RoleAssignmentSource's

Example

Query
query roleAssignmentSources(
  $dataSourceUuid: [UUID],
  $limit: Int,
  $offset: Int,
  $orderBy: [RoleAssignmentSourceOrderByQuery],
  $roleAssignmentUuid: [UUID],
  $uuid: [UUID],
  $where: RoleAssignmentSourceQuery
) {
  roleAssignmentSources(
    dataSourceUuid: $dataSourceUuid,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    roleAssignmentUuid: $roleAssignmentUuid,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...RoleAssignmentSourceFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "dataSourceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 987,
  "offset": 987,
  "orderBy": [RoleAssignmentSourceOrderByQuery],
  "roleAssignmentUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": RoleAssignmentSourceQuery
}
Response
{
  "data": {
    "roleAssignmentSources": {
      "items": [RoleAssignmentSource],
      "limit": 987,
      "offset": 123,
      "totalItems": 987
    }
  }
}

roleAssignments

Description

Retrieves a list of RoleAssignment's. Use query parameters to filter results or paginate through results.

Response

Returns a PagedRoleAssignments!

Arguments
Name Description
assigneeUuid - [UUID] The uuid of assignee (User, Organization_ or Identity) for which to retrieve RoleAssignment's.
entityUuid - [UUID] The uuid of entity (Domain or System) for which to retrieve RoleAssignment's.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [RoleAssignmentOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
roleUuid - [UUID] The uuid of the Role for which to retrieve RoleAssignment's.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - RoleAssignmentQuery RoleAssignmentQuery provides complex filter over RoleAssignment's

Example

Query
query roleAssignments(
  $assigneeUuid: [UUID],
  $entityUuid: [UUID],
  $limit: Int,
  $offset: Int,
  $orderBy: [RoleAssignmentOrderByQuery],
  $roleUuid: [UUID],
  $status: [Status],
  $uuid: [UUID],
  $where: RoleAssignmentQuery
) {
  roleAssignments(
    assigneeUuid: $assigneeUuid,
    entityUuid: $entityUuid,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    roleUuid: $roleUuid,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...RoleAssignmentFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "assigneeUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "entityUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 987,
  "offset": 987,
  "orderBy": [RoleAssignmentOrderByQuery],
  "roleUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": RoleAssignmentQuery
}
Response
{
  "data": {
    "roleAssignments": {
      "items": [RoleAssignment],
      "limit": 123,
      "offset": 987,
      "totalItems": 987
    }
  }
}

roles

Description

Retrieves multiple Role objects that match the specified filters.

Response

Returns a PagedRoles!

Arguments
Name Description
domainUuid - UUID The domain UUID associated with the Role object.
entityType - RoleEntityType The type of entity that the Role object pertains to.
limit - Int The maximum number of items which should be returned.
name - String The name of the Role object to be retrieved.
offset - Int The offset of items which should be returned.
orderBy - [RoleOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - RoleWhereQuery Complex filtering over Role objects.

Example

Query
query roles(
  $domainUuid: UUID,
  $entityType: RoleEntityType,
  $limit: Int,
  $name: String,
  $offset: Int,
  $orderBy: [RoleOrderByQuery],
  $uuid: [UUID],
  $where: RoleWhereQuery
) {
  roles(
    domainUuid: $domainUuid,
    entityType: $entityType,
    limit: $limit,
    name: $name,
    offset: $offset,
    orderBy: $orderBy,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...RoleFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "entityType": "DOMAIN",
  "limit": 987,
  "name": "xyz789",
  "offset": 123,
  "orderBy": [RoleOrderByQuery],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": RoleWhereQuery
}
Response
{
  "data": {
    "roles": {
      "items": [Role],
      "limit": 987,
      "offset": 123,
      "totalItems": 123
    }
  }
}

service

Description

Retrieve a single Service object by its UUID.

Response

Returns a Service!

Arguments
Name Description
uuid - UUID! The UUID of the Service to be retrieved.

Example

Query
query service($uuid: UUID!) {
  service(uuid: $uuid) {
    characteristics {
      ...PagedCharacteristicsFragment
    }
    code
    componentModels {
      ...PagedComponentModelsFragment
    }
    components {
      ...PagedComponentsFragment
    }
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "service": {
      "characteristics": PagedCharacteristics,
      "code": "abc123",
      "componentModels": PagedComponentModels,
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "xyz789",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

services

Description

This endpoint retrieves multiple Services with various filters. It has support for complex filtering over the Services and results are paginated by limit and offset. Requires UUID information for domain and orders the results.

Response

Returns a PagedServices!

Arguments
Name Description
code - [String] The list of Service codes by which to filter.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [ServiceOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - ServiceQuery Complex filtering over Services.

Example

Query
query services(
  $code: [String],
  $limit: Int,
  $offset: Int,
  $orderBy: [ServiceOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: ServiceQuery
) {
  services(
    code: $code,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...ServiceFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "code": ["abc123"],
  "limit": 987,
  "offset": 123,
  "orderBy": [ServiceOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": ServiceQuery
}
Response
{
  "data": {
    "services": {
      "items": [Service],
      "limit": 123,
      "offset": 123,
      "totalItems": 987
    }
  }
}

setpoints

Description

Retrieve multiple Setpoints.

Response

Returns a PagedSetpoints!

Arguments
Name Description
after - String The cursor after which items should be returned.
characteristicCode - [String] The list of Characteristic codes by which to filter fetched items.
characteristicUuid - [UUID] The list of Characteristic UUIDs by which to filter fetched items.
componentCode - [String] The list of Component codes by which to filter fetched items.
componentModelCode - [String] The list of Component Model codes by which to filter fetched items.
componentModelUuid - [UUID] The list of Component Model UUIDs by which to filter fetched items.
componentUuid - [UUID] The list of Component UUIDs by which to filter fetched items.
from - DateTime The inclusive start of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the previous possible time. A grid of 1h will snap to the previous full hour A grid of 1d snaps to the previous midnight in the UTC time zone A grid of 1w snaps to the previous midnight on Monday in the UTC time zone All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with a time of 12:12:00 matches to 12:00:00 and returns all elements from 12:00:00 to 12:15:00 in this grid.
limit - Int The maximum number of items which should be returned.
orderBy - [SetpointOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
round - Int Optional Integer. Configures the rounding of raw values before being counted. round specifies the number decimals to use when rounding the number. 0 rounds to the nearest integer. Optional, defaults to no rounding applied.
serviceCode - [String] The list of Service codes by which to filter fetched items.
serviceIndex - [Int] A list of Service & ComponentModel relationship indices to filter retrieved items.
serviceUuid - [UUID] A list of Service UUIDs by which to filter retrieved items.
systemCode - [String] The list of System codes by which to filter fetched items.
systemUuid - [UUID] The list of System UUIDs by which to filter fetched items.
timeStreamUuid - [UUID] The list of TimeStream UUIDs by which to filter fetched items.
to - DateTime The exclusive end of the window which data should be requested If a grid is passed along with this parameter, the value will be adjusted onto the next possible time. A grid of 1h will snap to the next full hour A grid of 1d snaps to next midnight in the UTC time zone A grid of 1w snaps to the next midnight on Monday in the UTC time zone. All grids less than 1h match to the common timespan which is requested. E.g. a grid of 15m with an to time of 12:12:00 matches to 12:15:00 and returns all elements from 12:00:00 to 12:15:00 in the last grid.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - SetpointsWhereQuery Filter Setpoints based on specific criteria.

Example

Query
query setpoints(
  $after: String,
  $characteristicCode: [String],
  $characteristicUuid: [UUID],
  $componentCode: [String],
  $componentModelCode: [String],
  $componentModelUuid: [UUID],
  $componentUuid: [UUID],
  $from: DateTime,
  $limit: Int,
  $orderBy: [SetpointOrderByQuery],
  $round: Int,
  $serviceCode: [String],
  $serviceIndex: [Int],
  $serviceUuid: [UUID],
  $systemCode: [String],
  $systemUuid: [UUID],
  $timeStreamUuid: [UUID],
  $to: DateTime,
  $uuid: [UUID],
  $where: SetpointsWhereQuery
) {
  setpoints(
    after: $after,
    characteristicCode: $characteristicCode,
    characteristicUuid: $characteristicUuid,
    componentCode: $componentCode,
    componentModelCode: $componentModelCode,
    componentModelUuid: $componentModelUuid,
    componentUuid: $componentUuid,
    from: $from,
    limit: $limit,
    orderBy: $orderBy,
    round: $round,
    serviceCode: $serviceCode,
    serviceIndex: $serviceIndex,
    serviceUuid: $serviceUuid,
    systemCode: $systemCode,
    systemUuid: $systemUuid,
    timeStreamUuid: $timeStreamUuid,
    to: $to,
    uuid: $uuid,
    where: $where
  ) {
    cursor
    items {
      ...SetpointFragment
    }
    limit
  }
}
Variables
{
  "after": "xyz789",
  "characteristicCode": ["abc123"],
  "characteristicUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentCode": ["abc123"],
  "componentModelCode": ["xyz789"],
  "componentModelUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "componentUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "from": "2007-12-03T10:15:30Z",
  "limit": 123,
  "orderBy": [SetpointOrderByQuery],
  "round": 987,
  "serviceCode": ["xyz789"],
  "serviceIndex": [123],
  "serviceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "systemCode": ["abc123"],
  "systemUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "timeStreamUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "to": "2007-12-03T10:15:30Z",
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": SetpointsWhereQuery
}
Response
{
  "data": {
    "setpoints": {
      "cursor": "abc123",
      "items": [Setpoint],
      "limit": 123
    }
  }
}

system

Description

Retrieves the data of a DRIVR System by UUID.

Response

Returns a System!

Arguments
Name Description
uuid - UUID! The UUID of the System whose data you want to retrieve.

Example

Query
query system($uuid: UUID!) {
  system(uuid: $uuid) {
    certificate {
      ...CertificateFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    connectionState
    connectionStateUpdatedAt
    createdAt
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    locationUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    owner {
      ... on Organization {
        ...OrganizationFragment
      }
      ... on User {
        ...UserFragment
      }
    }
    ownerUuid
    roleAssignments {
      ...PagedRoleAssignmentsFragment
    }
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "system": {
      "certificate": Certificate,
      "code": "xyz789",
      "components": PagedComponents,
      "connectionState": "CONNECTED",
      "connectionStateUpdatedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "locationUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "owner": Organization,
      "ownerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "roleAssignments": PagedRoleAssignments,
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

systems

Description

Retrieves a paged list of Systems available in DRIVR.

Response

Returns a PagedSystems!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [SystemOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - SystemQuery Complex filtering over systems.

Example

Query
query systems(
  $limit: Int,
  $offset: Int,
  $orderBy: [SystemOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: SystemQuery
) {
  systems(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...SystemFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 123,
  "offset": 987,
  "orderBy": [SystemOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": SystemQuery
}
Response
{
  "data": {
    "systems": {
      "items": [System],
      "limit": 987,
      "offset": 987,
      "totalItems": 123
    }
  }
}

timeStream

Description

Retrieve a single TimeStream by uuid

Response

Returns a TimeStream!

Arguments
Name Description
uuid - UUID! The UUID of the TimeStream.

Example

Query
query timeStream($uuid: UUID!) {
  timeStream(uuid: $uuid) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    component {
      ...ComponentFragment
    }
    componentUuid
    createdAt
    service {
      ...ServiceFragment
    }
    serviceIndex
    serviceUuid
    status
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "timeStream": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "component": Component,
      "componentUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "service": Service,
      "serviceIndex": 987,
      "serviceUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

timeStreams

Description

Retrieve a paged list of TimeStream's

Response

Returns a PagedTimeStreams!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [TimeStreamOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - TimeStreamQuery Complex filtering over TimeStreams.

Example

Query
query timeStreams(
  $limit: Int,
  $offset: Int,
  $orderBy: [TimeStreamOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: TimeStreamQuery
) {
  timeStreams(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...TimeStreamFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 987,
  "offset": 987,
  "orderBy": [TimeStreamOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": TimeStreamQuery
}
Response
{
  "data": {
    "timeStreams": {
      "items": [TimeStream],
      "limit": 987,
      "offset": 123,
      "totalItems": 123
    }
  }
}

user

Description

This endpoint is used to retrieve a specific User and its information by a given UUID.

Response

Returns a User!

Arguments
Name Description
uuid - UUID! The UUID of the User whose account you wish to retrieve.

Example

Query
query user($uuid: UUID!) {
  user(uuid: $uuid) {
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    email
    loginMethods {
      ...PagedLoginMethodsFragment
    }
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    organization {
      ...OrganizationFragment
    }
    organizationUuid
    roleAssignments {
      ...PagedRoleAssignmentsFragment
    }
    sources {
      ...PagedUserSourcesFragment
    }
    status
    systems {
      ...PagedSystemsFragment
    }
    updatedAt
    uuid
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "user": {
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "email": "xyz789",
      "loginMethods": PagedLoginMethods,
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "organization": Organization,
      "organizationUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "roleAssignments": PagedRoleAssignments,
      "sources": PagedUserSources,
      "status": "ACTIVATED",
      "systems": PagedSystems,
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

userSources

Description

This endpoint retrieves multiple UserSources, which represent the connection between specific Users in DRIVR and specific DataSources.

Response

Returns a PagedUserSources!

Arguments
Name Description
dataSourceUuid - [UUID] The list of DataSource UUIDs by which to filter fetched items.
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [UserSourceOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
userUuid - [UUID] The list of User UUIDs by which to filter fetched items.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - UserSourceQuery This where filter is used to narrow down the results of the userSources API endpoint. For example, you can use userSource: {dataSource: {uuid: {eq: "<uuid>"}}} to select all UserSources for a particular DataSource.

Example

Query
query userSources(
  $dataSourceUuid: [UUID],
  $limit: Int,
  $offset: Int,
  $orderBy: [UserSourceOrderByQuery],
  $userUuid: [UUID],
  $uuid: [UUID],
  $where: UserSourceQuery
) {
  userSources(
    dataSourceUuid: $dataSourceUuid,
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    userUuid: $userUuid,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...UserSourceFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "dataSourceUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "limit": 123,
  "offset": 987,
  "orderBy": [UserSourceOrderByQuery],
  "userUuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": UserSourceQuery
}
Response
{
  "data": {
    "userSources": {
      "items": [UserSource],
      "limit": 987,
      "offset": 123,
      "totalItems": 123
    }
  }
}

users

Description

This endpoint returns a list of multiple Users in DRIVR that match the specified filters and pagination options.

Response

Returns a PagedUsers!

Arguments
Name Description
limit - Int The maximum number of items which should be returned.
offset - Int The offset of items which should be returned.
orderBy - [UserOrderByQuery] Order fetched items by the given list of fields. Each argument in the list may only contain a single field: direction pair. If multiple fields are provided, the fetched items will be ordered by each field in turn.
status - [Status] The status by which to filter entities.
uuid - [UUID] The list of UUIDs by which to filter fetched items.
where - UserQuery This where filter is used to narrow down the results of the users API endpoint. This filter allows for complex querying over Users using fields.

Example

Query
query users(
  $limit: Int,
  $offset: Int,
  $orderBy: [UserOrderByQuery],
  $status: [Status],
  $uuid: [UUID],
  $where: UserQuery
) {
  users(
    limit: $limit,
    offset: $offset,
    orderBy: $orderBy,
    status: $status,
    uuid: $uuid,
    where: $where
  ) {
    items {
      ...UserFragment
    }
    limit
    offset
    totalItems
  }
}
Variables
{
  "limit": 123,
  "offset": 123,
  "orderBy": [UserOrderByQuery],
  "status": ["ACTIVATED"],
  "uuid": [
    "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
  ],
  "where": UserQuery
}
Response
{
  "data": {
    "users": {
      "items": [User],
      "limit": 123,
      "offset": 987,
      "totalItems": 123
    }
  }
}

Mutations

ackEvent

Description

Acknowledges an Event within DRIVR, given its UUID. This means that it has been marked as "seen" by the user and will not be flagged as a new event again.

Response

Returns an EmptyResult

Arguments
Name Description
uuid - UUID! The UUID of the Event to be acknowledged.

Example

Query
mutation ackEvent($uuid: UUID!) {
  ackEvent(uuid: $uuid) {
    ok
  }
}
Variables
{
  "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{"data": {"ackEvent": {"ok": Empty}}}

ackSetpoint

Description

Acknowledge a Setpoint.

Response

Returns an EmptyResult

Arguments
Name Description
message - String An optional message if the Setpoint is rejected.
receiptId - String! The receipt id of the Setpoint to acknowledge.
state - SetpointState! The state of the Setpoint.

Example

Query
mutation ackSetpoint(
  $message: String,
  $receiptId: String!,
  $state: SetpointState!
) {
  ackSetpoint(
    message: $message,
    receiptId: $receiptId,
    state: $state
  ) {
    ok
  }
}
Variables
{
  "message": "xyz789",
  "receiptId": "abc123",
  "state": "ACCEPTED"
}
Response
{"data": {"ackSetpoint": {"ok": Empty}}}

addCharacteristicToService

Description

Add a Characteristic to a Service. Either codes or uuids for the Characteristic and Service are required.

Response

Returns a CharacteristicServiceLink

Arguments
Name Description
characteristicCode - String The code of the Characteristic.
characteristicUuid - UUID The uuid of the Characteristic.
serviceCode - String The code of the Service.
serviceUuid - UUID The uuid of the Service.

Example

Query
mutation addCharacteristicToService(
  $characteristicCode: String,
  $characteristicUuid: UUID,
  $serviceCode: String,
  $serviceUuid: UUID
) {
  addCharacteristicToService(
    characteristicCode: $characteristicCode,
    characteristicUuid: $characteristicUuid,
    serviceCode: $serviceCode,
    serviceUuid: $serviceUuid
  ) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    service {
      ...ServiceFragment
    }
    serviceUuid
    status
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicCode": "xyz789",
  "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "serviceCode": "xyz789",
  "serviceUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "addCharacteristicToService": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "service": Service,
      "serviceUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

addServiceToComponentModel

Description

Adds a Service to a ComponentModel object. Either UUIDs or Codes for the Service and ComponentModel are required for the operation.

Response

Returns a ServiceComponentModelLink

Arguments
Name Description
componentModelCode - String The code of the ComponentModel object to which to add the Service.
componentModelUuid - UUID The UUID of the ComponentModel object to which to add the Service.
index - Int The index value of the Service in the ComponentModel object.
serviceCode - String The code of the Service to add to the ComponentModel.
serviceUuid - UUID The UUID of the Service object to add to the ComponentModel.

Example

Query
mutation addServiceToComponentModel(
  $componentModelCode: String,
  $componentModelUuid: UUID,
  $index: Int,
  $serviceCode: String,
  $serviceUuid: UUID
) {
  addServiceToComponentModel(
    componentModelCode: $componentModelCode,
    componentModelUuid: $componentModelUuid,
    index: $index,
    serviceCode: $serviceCode,
    serviceUuid: $serviceUuid
  ) {
    componentModel {
      ...ComponentModelFragment
    }
    componentModelUuid
    createdAt
    index
    service {
      ...ServiceFragment
    }
    serviceUuid
    status
    updatedAt
    uuid
  }
}
Variables
{
  "componentModelCode": "xyz789",
  "componentModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "index": 987,
  "serviceCode": "xyz789",
  "serviceUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "addServiceToComponentModel": {
      "componentModel": ComponentModel,
      "componentModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "index": 123,
      "service": Service,
      "serviceUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createApplicationConsumer

Description

Creates an ApplicationConsumer that acts as an API user or client, for authenticating against DRIVR and accessing its APIs, enabling external applications to interact with DRIVR on behalf of authenticated users, devices, applications, or connectors.

Response

Returns an ApplicationConsumer

Arguments
Name Description
defaultRedirectUri - String If not explicitly set, it defaults to the first element in redirect_uris.
grantTypes - [GrantType]! An ApplicationConsumer must have a list of grant_types with at least one entry. They represent how the application can authorize users against the API.
name - String! The name of the ApplicationConsumer.
noExplicitConsentRequired - Boolean Attribute which verifies if Identity entities which use the Application needs to give explicit consent for API access.
ownerUuid - UUID The UUID of the Account which owns the ApplicationConsumer.
redirectUris - [String] The redirect_uris of the ApplicationConsumer. Must have at least one redirect_uris entry if the grant_type=AUTHORIZATION_CODE. Multiple entires are supported.
scopes - [String]! An ApplicationConsumer must have at least one scopes entry. Multiple entires are supported and they indicate which scopes a certain ApplicationConsumer requires.
secret - String The secret of the ApplicationConsumer which is used for strengthened security guarantees for certain OAuth2 flows.
slug - String! The slug of the ApplicationConsumer which must be unique within the Domain. This will be prepended to the Domain's hostname to create the consumer's identifier.
status - Status The status of the ApplicationConsumer.

Example

Query
mutation createApplicationConsumer(
  $defaultRedirectUri: String,
  $grantTypes: [GrantType]!,
  $name: String!,
  $noExplicitConsentRequired: Boolean,
  $ownerUuid: UUID,
  $redirectUris: [String],
  $scopes: [String]!,
  $secret: String,
  $slug: String!,
  $status: Status
) {
  createApplicationConsumer(
    defaultRedirectUri: $defaultRedirectUri,
    grantTypes: $grantTypes,
    name: $name,
    noExplicitConsentRequired: $noExplicitConsentRequired,
    ownerUuid: $ownerUuid,
    redirectUris: $redirectUris,
    scopes: $scopes,
    secret: $secret,
    slug: $slug,
    status: $status
  ) {
    createdAt
    defaultRedirectUri
    domain {
      ...DomainFragment
    }
    domainUuid
    grantTypes
    identifier
    name
    noExplicitConsentRequired
    owner {
      ... on Organization {
        ...OrganizationFragment
      }
      ... on User {
        ...UserFragment
      }
    }
    ownerUuid
    redirectUris
    scopes
    secret
    slug
    status
    updatedAt
    uuid
  }
}
Variables
{
  "defaultRedirectUri": "abc123",
  "grantTypes": ["AUTHORIZATION_CODE"],
  "name": "xyz789",
  "noExplicitConsentRequired": false,
  "ownerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "redirectUris": ["abc123"],
  "scopes": ["abc123"],
  "secret": "xyz789",
  "slug": "abc123",
  "status": "ACTIVATED"
}
Response
{
  "data": {
    "createApplicationConsumer": {
      "createdAt": "2007-12-03T10:15:30Z",
      "defaultRedirectUri": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "grantTypes": ["AUTHORIZATION_CODE"],
      "identifier": "abc123",
      "name": "xyz789",
      "noExplicitConsentRequired": false,
      "owner": Organization,
      "ownerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "redirectUris": ["abc123"],
      "scopes": ["abc123"],
      "secret": "xyz789",
      "slug": "abc123",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createAzureAuthenticationMethod

Description

Create a new DomainAuthenticationMethod for authenticating accounts from the Azure AD. Only one AzureDomainAuthenticationMethod of this type can be ACTIVATED at a time.

Response

Returns an AzureAuthenticationMethod

Arguments
Name Description
configuration - CreateAzureAuthenticationMethodConfiguration The configuration details which should be used to register DRIVR at the Azure Portal in order to allow Azure Accounts to authenticate themselves.
status - Status The status of the AzureDomainAuthenticationMethod. Can not be ARCHIVED on creation.

Example

Query
mutation createAzureAuthenticationMethod(
  $configuration: CreateAzureAuthenticationMethodConfiguration,
  $status: Status
) {
  createAzureAuthenticationMethod(
    configuration: $configuration,
    status: $status
  ) {
    authenticationType
    configuration {
      ...AzureAuthenticationMethodConfigurationFragment
    }
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    status
    updatedAt
    uuid
  }
}
Variables
{
  "configuration": CreateAzureAuthenticationMethodConfiguration,
  "status": "ACTIVATED"
}
Response
{
  "data": {
    "createAzureAuthenticationMethod": {
      "authenticationType": "AZURE_AD",
      "configuration": AzureAuthenticationMethodConfiguration,
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCertificate

Description

Creates a Certificate for an Issuer and a DRIVR Component or System.

Response

Returns a Certificate

Arguments
Name Description
csr - String! The csr for the Certificate as a base64 encoded string.
duration - Timespan The Certificate validity duration. Can not be a negative duration.
entityUuid - UUID! The UUID of the Component or System which the Certificate should be assigned to.
issuerUuid - UUID! The UUID of the Issuer which the Certificate belongs to.
name - String! The name for the Certificate. Has to be unique within the Domain. A Certificate name must not contain any special characters or white spaces.

Example

Query
mutation createCertificate(
  $csr: String!,
  $duration: Timespan,
  $entityUuid: UUID!,
  $issuerUuid: UUID!,
  $name: String!
) {
  createCertificate(
    csr: $csr,
    duration: $duration,
    entityUuid: $entityUuid,
    issuerUuid: $issuerUuid,
    name: $name
  ) {
    certificate
    createdAt
    csr
    domain {
      ...DomainFragment
    }
    domainUuid
    duration
    entity {
      ... on Component {
        ...ComponentFragment
      }
      ... on System {
        ...SystemFragment
      }
    }
    entityType
    entityUuid
    expiresAt
    issuer {
      ...IssuerFragment
    }
    issuerUuid
    name
    updatedAt
    uuid
  }
}
Variables
{
  "csr": "xyz789",
  "duration": Timespan,
  "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "issuerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "name": "xyz789"
}
Response
{
  "data": {
    "createCertificate": {
      "certificate": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z",
      "csr": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "duration": Timespan,
      "entity": Component,
      "entityType": "COMPONENT",
      "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "expiresAt": "2007-12-03T10:15:30Z",
      "issuer": Issuer,
      "issuerUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "name": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristic

Description

Create a new Characteristic. A Characteristic groups values of the same kind and has a distinct data type. Refer to the individual Characteristic nodes for a more detailed description.

Response

Returns a Characteristic

Arguments
Name Description
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
dataType - CharacteristicDataType! The Characteristic's data type.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristic(
  $characteristicType: CharacteristicType,
  $code: String,
  $dataType: CharacteristicDataType!,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristic(
    characteristicType: $characteristicType,
    code: $code,
    dataType: $dataType,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicType": "MEASUREMENT",
  "code": "xyz789",
  "dataType": "BLOB",
  "description": "abc123",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "xyz789",
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristic": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicBlob

Description

Create a new blob Characteristic. Refer to the returned CharacteristicBlob node for a more detailed description.

Response

Returns a CharacteristicBlob

Arguments
Name Description
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicBlob(
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicBlob(
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicType": "MEASUREMENT",
  "code": "abc123",
  "description": "xyz789",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "xyz789",
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristicBlob": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "xyz789",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicBoolean

Description

Create a new boolean Characteristic. Refer to the returned CharacteristicBoolean node for a more detailed description.

Response

Returns a CharacteristicBoolean

Arguments
Name Description
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicBoolean(
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicBoolean(
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicType": "MEASUREMENT",
  "code": "xyz789",
  "description": "xyz789",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "abc123",
  "status": "ACTIVATED",
  "symbol": "xyz789"
}
Response
{
  "data": {
    "createCharacteristicBoolean": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "xyz789",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicDate

Description

Create a new date Characteristic. Refer to the returned CharacteristicDate node for a more detailed description.

Response

Returns a CharacteristicDate

Arguments
Name Description
boundaryMax - Date The upper boundary of allowed values.
boundaryMin - Date The lower boundary of allowed values.
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicDate(
  $boundaryMax: Date,
  $boundaryMin: Date,
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicDate(
    boundaryMax: $boundaryMax,
    boundaryMin: $boundaryMin,
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    boundaryMax
    boundaryMin
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "boundaryMax": "2007-12-03",
  "boundaryMin": "2007-12-03",
  "characteristicType": "MEASUREMENT",
  "code": "abc123",
  "description": "abc123",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "xyz789",
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristicDate": {
      "boundaryMax": "2007-12-03",
      "boundaryMin": "2007-12-03",
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "xyz789",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicFloat

Description

Create a new float Characteristic. Refer to the returned CharacteristicFloat node for a more detailed description.

Response

Returns a CharacteristicFloat

Arguments
Name Description
boundaryMax - Float The upper boundary of allowed values.
boundaryMin - Float The lower boundary of allowed values.
boundaryStep - Float It represents the step size or increment value.
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
precision - Int The floating-point precision of values.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicFloat(
  $boundaryMax: Float,
  $boundaryMin: Float,
  $boundaryStep: Float,
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $precision: Int,
  $status: Status,
  $symbol: String
) {
  createCharacteristicFloat(
    boundaryMax: $boundaryMax,
    boundaryMin: $boundaryMin,
    boundaryStep: $boundaryStep,
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    precision: $precision,
    status: $status,
    symbol: $symbol
  ) {
    boundaryMax
    boundaryMin
    boundaryStep
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    precision
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "boundaryMax": 987.65,
  "boundaryMin": 987.65,
  "boundaryStep": 987.65,
  "characteristicType": "MEASUREMENT",
  "code": "xyz789",
  "description": "abc123",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "abc123",
  "precision": 987,
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristicFloat": {
      "boundaryMax": 123.45,
      "boundaryMin": 987.65,
      "boundaryStep": 123.45,
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "precision": 987,
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicInteger

Description

Create a new integer Characteristic. Refer to the returned CharacteristicInteger node for a more detailed description.

Response

Returns a CharacteristicInteger

Arguments
Name Description
boundaryMax - Int The upper boundary of allowed values.
boundaryMin - Int The lower boundary of allowed values.
boundaryStep - Int It represents the step size or increment value.
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicInteger(
  $boundaryMax: Int,
  $boundaryMin: Int,
  $boundaryStep: Int,
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicInteger(
    boundaryMax: $boundaryMax,
    boundaryMin: $boundaryMin,
    boundaryStep: $boundaryStep,
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    boundaryMax
    boundaryMin
    boundaryStep
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "boundaryMax": 123,
  "boundaryMin": 987,
  "boundaryStep": 987,
  "characteristicType": "MEASUREMENT",
  "code": "abc123",
  "description": "xyz789",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "xyz789",
  "status": "ACTIVATED",
  "symbol": "xyz789"
}
Response
{
  "data": {
    "createCharacteristicInteger": {
      "boundaryMax": 987,
      "boundaryMin": 987,
      "boundaryStep": 123,
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "xyz789",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicJson

Description

Create a new JSON Characteristic. Refer to the returned CharacteristicJson node for a more detailed description.

Response

Returns a CharacteristicJson

Arguments
Name Description
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
schema - String JSON schema for valuepoints.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicJson(
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $schema: String,
  $status: Status,
  $symbol: String
) {
  createCharacteristicJson(
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    schema: $schema,
    status: $status,
    symbol: $symbol
  ) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    schema
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicType": "MEASUREMENT",
  "code": "abc123",
  "description": "abc123",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "abc123",
  "schema": "xyz789",
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristicJson": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "xyz789",
      "schema": "xyz789",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicSelect

Description

Create a new SELECT Characteristic. Refer to the returned CharacteristicSelect node for a more detailed description.

Response

Returns a CharacteristicSelect

Arguments
Name Description
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
multiple - Boolean Whether the SELECT Characteristic allows multiple options to be selected at the same time.
name - String! The name of the Characteristic.
options - [CharacteristicSelectOptionQuery] List of options which can be selected on the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicSelect(
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $multiple: Boolean,
  $name: String!,
  $options: [CharacteristicSelectOptionQuery],
  $status: Status,
  $symbol: String
) {
  createCharacteristicSelect(
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    multiple: $multiple,
    name: $name,
    options: $options,
    status: $status,
    symbol: $symbol
  ) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    multiple
    name
    options {
      ...CharacteristicSelectOptionFragment
    }
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicType": "MEASUREMENT",
  "code": "xyz789",
  "description": "xyz789",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "multiple": true,
  "name": "abc123",
  "options": [CharacteristicSelectOptionQuery],
  "status": "ACTIVATED",
  "symbol": "xyz789"
}
Response
{
  "data": {
    "createCharacteristicSelect": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "xyz789",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "multiple": true,
      "name": "abc123",
      "options": [CharacteristicSelectOption],
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicString

Description

Create a new string Characteristic. Refer to the returned CharacteristicString node for a more detailed description.

Response

Returns a CharacteristicString

Arguments
Name Description
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
lengthMax - Int The maximum length of allowed values.
lengthMin - Int The minimum length of allowed values.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicString(
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $lengthMax: Int,
  $lengthMin: Int,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicString(
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    lengthMax: $lengthMax,
    lengthMin: $lengthMin,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    lengthMax
    lengthMin
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicType": "MEASUREMENT",
  "code": "xyz789",
  "description": "abc123",
  "lengthMax": 123,
  "lengthMin": 123,
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "xyz789",
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristicString": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "lengthMax": 987,
      "lengthMin": 987,
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicTime

Description

Create a new time Characteristic. Refer to the returned CharacteristicTime node for a more detailed description.

Response

Returns a CharacteristicTime

Arguments
Name Description
boundaryMax - Time The upper boundary of allowed values.
boundaryMin - Time The lower boundary of allowed values.
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicTime(
  $boundaryMax: Time,
  $boundaryMin: Time,
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicTime(
    boundaryMax: $boundaryMax,
    boundaryMin: $boundaryMin,
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    boundaryMax
    boundaryMin
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "boundaryMax": "10:15:30Z",
  "boundaryMin": "10:15:30Z",
  "characteristicType": "MEASUREMENT",
  "code": "abc123",
  "description": "xyz789",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "xyz789",
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristicTime": {
      "boundaryMax": "10:15:30Z",
      "boundaryMin": "10:15:30Z",
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicTimespan

Description

Create a new timespan Characteristic. Refer to the returned CharacteristicTimespan node for a more detailed description.

Response

Returns a CharacteristicTimespan

Arguments
Name Description
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicTimespan(
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicTimespan(
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "characteristicType": "MEASUREMENT",
  "code": "abc123",
  "description": "xyz789",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "abc123",
  "status": "ACTIVATED",
  "symbol": "abc123"
}
Response
{
  "data": {
    "createCharacteristicTimespan": {
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "xyz789",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicTimestamp

Description

Create a new timestamp Characteristic. Refer to the returned CharacteristicTimestamp node for a more detailed description.

Response

Returns a CharacteristicTimestamp

Arguments
Name Description
boundaryMax - DateTime The upper boundary of allowed values.
boundaryMin - DateTime The lower boundary of allowed values.
characteristicType - CharacteristicType The type of the Characteristic.
code - String The Characteristic's code.
description - String The description of the Characteristic.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the Characteristic.
status - Status The status of the Characteristic.
symbol - String The Characteristic's symbol.

Example

Query
mutation createCharacteristicTimestamp(
  $boundaryMax: DateTime,
  $boundaryMin: DateTime,
  $characteristicType: CharacteristicType,
  $code: String,
  $description: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status,
  $symbol: String
) {
  createCharacteristicTimestamp(
    boundaryMax: $boundaryMax,
    boundaryMin: $boundaryMin,
    characteristicType: $characteristicType,
    code: $code,
    description: $description,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    symbol: $symbol
  ) {
    boundaryMax
    boundaryMin
    characteristicType
    characteristicValidValues {
      ...PagedCharacteristicValidValuesFragment
    }
    code
    components {
      ...PagedComponentsFragment
    }
    createdAt
    dataType
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesFragment
    }
    status
    symbol
    updatedAt
    uuid
  }
}
Variables
{
  "boundaryMax": "2007-12-03T10:15:30Z",
  "boundaryMin": "2007-12-03T10:15:30Z",
  "characteristicType": "MEASUREMENT",
  "code": "abc123",
  "description": "abc123",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "abc123",
  "status": "ACTIVATED",
  "symbol": "xyz789"
}
Response
{
  "data": {
    "createCharacteristicTimestamp": {
      "boundaryMax": "2007-12-03T10:15:30Z",
      "boundaryMin": "2007-12-03T10:15:30Z",
      "characteristicType": "MEASUREMENT",
      "characteristicValidValues": PagedCharacteristicValidValues,
      "code": "abc123",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServices,
      "status": "ACTIVATED",
      "symbol": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createCharacteristicValidValueBoolean

Description

Create a new CharacteristicValidValue of type boolean.

Response

Returns a CharacteristicValidValueBoolean

Arguments
Name Description
characteristicUuid - UUID! The UUID of the Characteristic for which the value is valid.
description - String A description of the CharacteristicValidValue.
value - Boolean! The value of the CharacteristicValidValue.

Example

Query
mutation createCharacteristicValidValueBoolean(
  $characteristicUuid: UUID!,
  $description: String,
  $value: Boolean!
) {
  createCharacteristicValidValueBoolean(
    characteristicUuid: $characteristicUuid,
    description: $description,
    value: $value
  ) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    dataType
    description
    updatedAt
    uuid
    value
  }
}
Variables
{
  "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "description": "abc123",
  "value": false
}
Response
{
  "data": {
    "createCharacteristicValidValueBoolean": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "value": false
    }
  }
}

createCharacteristicValidValueFloat

Description

Create a new CharacteristicValidValue of type float.

Response

Returns a CharacteristicValidValueFloat

Arguments
Name Description
characteristicUuid - UUID! The UUID of the Characteristic for which the value is valid.
description - String A description of the CharacteristicValidValue.
value - Float! The value of the CharacteristicValidValue.

Example

Query
mutation createCharacteristicValidValueFloat(
  $characteristicUuid: UUID!,
  $description: String,
  $value: Float!
) {
  createCharacteristicValidValueFloat(
    characteristicUuid: $characteristicUuid,
    description: $description,
    value: $value
  ) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    dataType
    description
    updatedAt
    uuid
    value
  }
}
Variables
{
  "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "description": "abc123",
  "value": 123.45
}
Response
{
  "data": {
    "createCharacteristicValidValueFloat": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "value": 987.65
    }
  }
}

createCharacteristicValidValueInteger

Description

Create a new CharacteristicValidValue of type integer.

Response

Returns a CharacteristicValidValueInteger

Arguments
Name Description
characteristicUuid - UUID! The UUID of the Characteristic for which the value is valid.
description - String A description of the CharacteristicValidValue.
value - Int! The value of the CharacteristicValidValue.

Example

Query
mutation createCharacteristicValidValueInteger(
  $characteristicUuid: UUID!,
  $description: String,
  $value: Int!
) {
  createCharacteristicValidValueInteger(
    characteristicUuid: $characteristicUuid,
    description: $description,
    value: $value
  ) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    dataType
    description
    updatedAt
    uuid
    value
  }
}
Variables
{
  "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "description": "abc123",
  "value": 987
}
Response
{
  "data": {
    "createCharacteristicValidValueInteger": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "value": 987
    }
  }
}

createCharacteristicValidValueString

Description

Create a new CharacteristicValidValue of type string.

Response

Returns a CharacteristicValidValueString

Arguments
Name Description
characteristicUuid - UUID! The UUID of the Characteristic for which the value is valid.
description - String A description of the CharacteristicValidValue.
value - String! The value of the CharacteristicValidValue.

Example

Query
mutation createCharacteristicValidValueString(
  $characteristicUuid: UUID!,
  $description: String,
  $value: String!
) {
  createCharacteristicValidValueString(
    characteristicUuid: $characteristicUuid,
    description: $description,
    value: $value
  ) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    dataType
    description
    updatedAt
    uuid
    value
  }
}
Variables
{
  "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "description": "xyz789",
  "value": "xyz789"
}
Response
{
  "data": {
    "createCharacteristicValidValueString": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "value": "abc123"
    }
  }
}

createCharacteristicValidValueTime

Description

Create a new CharacteristicValidValue of type time.

Response

Returns a CharacteristicValidValueTime

Arguments
Name Description
characteristicUuid - UUID! The UUID of the Characteristic for which the value is valid.
description - String A description of the CharacteristicValidValue.
value - Time! The value of the CharacteristicValidValue.

Example

Query
mutation createCharacteristicValidValueTime(
  $characteristicUuid: UUID!,
  $description: String,
  $value: Time!
) {
  createCharacteristicValidValueTime(
    characteristicUuid: $characteristicUuid,
    description: $description,
    value: $value
  ) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    dataType
    description
    updatedAt
    uuid
    value
  }
}
Variables
{
  "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "description": "abc123",
  "value": "10:15:30Z"
}
Response
{
  "data": {
    "createCharacteristicValidValueTime": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "value": "10:15:30Z"
    }
  }
}

createCharacteristicValidValueTimespan

Description

Create a new CharacteristicValidValue of type timespan.

Arguments
Name Description
characteristicUuid - UUID! The UUID of the Characteristic for which the value is valid.
description - String A description of the CharacteristicValidValue.
value - Timespan! The value of the CharacteristicValidValue.

Example

Query
mutation createCharacteristicValidValueTimespan(
  $characteristicUuid: UUID!,
  $description: String,
  $value: Timespan!
) {
  createCharacteristicValidValueTimespan(
    characteristicUuid: $characteristicUuid,
    description: $description,
    value: $value
  ) {
    characteristic {
      ...CharacteristicFragment
    }
    characteristicUuid
    createdAt
    dataType
    description
    updatedAt
    uuid
    value
  }
}
Variables
{
  "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "description": "abc123",
  "value": Timespan
}
Response
{
  "data": {
    "createCharacteristicValidValueTimespan": {
      "characteristic": Characteristic,
      "characteristicUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "createdAt": "2007-12-03T10:15:30Z",
      "dataType": "BLOB",
      "description": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "value": Timespan
    }
  }
}

createComponent

Description

Creates a new Component.

Response

Returns a Component

Arguments
Name Description
code - String! A human-readable identifier for the Component.
componentModelUuid - UUID! The UUID of the ComponentModel from which the Component is created.
connectionState - ComponentConnectionState The connection state of the Component.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String The name of the Component.
status - Status The status of the Component.
systemUuid - UUID! The UUID of the System to which the Component belongs.

Example

Query
mutation createComponent(
  $code: String!,
  $componentModelUuid: UUID!,
  $connectionState: ComponentConnectionState,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String,
  $status: Status,
  $systemUuid: UUID!
) {
  createComponent(
    code: $code,
    componentModelUuid: $componentModelUuid,
    connectionState: $connectionState,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status,
    systemUuid: $systemUuid
  ) {
    certificate {
      ...CertificateFragment
    }
    characteristics {
      ...PagedCharacteristicsFragment
    }
    code
    componentModel {
      ...ComponentModelFragment
    }
    componentModelUuid
    connectionState
    connectionStateUpdatedAt
    createdAt
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesOnComponentFragment
    }
    status
    system {
      ...SystemFragment
    }
    systemUuid
    updatedAt
    uuid
  }
}
Variables
{
  "code": "abc123",
  "componentModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "connectionState": "CONNECTED",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "abc123",
  "status": "ACTIVATED",
  "systemUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
}
Response
{
  "data": {
    "createComponent": {
      "certificate": Certificate,
      "characteristics": PagedCharacteristics,
      "code": "abc123",
      "componentModel": ComponentModel,
      "componentModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "connectionState": "CONNECTED",
      "connectionStateUpdatedAt": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServicesOnComponent,
      "status": "ACTIVATED",
      "system": System,
      "systemUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createComponentModel

Description

This endpoint creates a new ComponentModel object.

Response

Returns a ComponentModel

Arguments
Name Description
code - String A human-readable identifier for the ComponentModel.
componentType - ComponentType! The type of the ComponentModel. Values are restricted to the component-type enum.
description - String A description of the ComponentModel.
isConnective - Boolean A setting which allows instantiated Component to report their connection state.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
name - String! The name of the ComponentModel.
status - Status The status of the ComponentModel. Values are restricted to the status enum.

Example

Query
mutation createComponentModel(
  $code: String,
  $componentType: ComponentType!,
  $description: String,
  $isConnective: Boolean,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $name: String!,
  $status: Status
) {
  createComponentModel(
    code: $code,
    componentType: $componentType,
    description: $description,
    isConnective: $isConnective,
    metadataKeyValueStore: $metadataKeyValueStore,
    name: $name,
    status: $status
  ) {
    code
    componentType
    components {
      ...PagedComponentsFragment
    }
    createdAt
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    isConnective
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    name
    services {
      ...PagedServicesOnComponentModelFragment
    }
    status
    updatedAt
    uuid
  }
}
Variables
{
  "code": "abc123",
  "componentType": "DEVICE",
  "description": "abc123",
  "isConnective": false,
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "name": "xyz789",
  "status": "ACTIVATED"
}
Response
{
  "data": {
    "createComponentModel": {
      "code": "abc123",
      "componentType": "DEVICE",
      "components": PagedComponents,
      "createdAt": "2007-12-03T10:15:30Z",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "isConnective": false,
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "name": "abc123",
      "services": PagedServicesOnComponentModel,
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createDataSource

Description

Create a new DataSource.

Response

Returns a DataSource

Arguments
Name Description
code - String! The code of the DataSource.
description - String The description of the DataSource.
name - String The name of the DataSource.
reference - String The reference of the DataSource, serving as an additional identifier.

Example

Query
mutation createDataSource(
  $code: String!,
  $description: String,
  $name: String,
  $reference: String
) {
  createDataSource(
    code: $code,
    description: $description,
    name: $name,
    reference: $reference
  ) {
    code
    createdAt
    description
    domain {
      ...DomainFragment
    }
    domainUuid
    name
    reference
    updatedAt
    uuid
  }
}
Variables
{
  "code": "abc123",
  "description": "abc123",
  "name": "abc123",
  "reference": "xyz789"
}
Response
{
  "data": {
    "createDataSource": {
      "code": "abc123",
      "createdAt": "2007-12-03T10:15:30Z",
      "description": "xyz789",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "name": "xyz789",
      "reference": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createDatapointBlob

Description

Create Datapoints of type blob.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputBlob]! The Datapoints to create.

Example

Query
mutation createDatapointBlob($datapoints: [DatapointInputBlob]!) {
  createDatapointBlob(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputBlob]}
Response
{"data": {"createDatapointBlob": {"ok": Empty}}}

createDatapointBoolean

Description

Create Datapoints of type boolean.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputBoolean]! The Datapoints to create.

Example

Query
mutation createDatapointBoolean($datapoints: [DatapointInputBoolean]!) {
  createDatapointBoolean(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputBoolean]}
Response
{"data": {"createDatapointBoolean": {"ok": Empty}}}

createDatapointDate

Description

Create Datapoints of type date.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputDate]! The Datapoints to create.

Example

Query
mutation createDatapointDate($datapoints: [DatapointInputDate]!) {
  createDatapointDate(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputDate]}
Response
{"data": {"createDatapointDate": {"ok": Empty}}}

createDatapointFloat

Description

Create Datapoints of type float.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputFloat]! The Datapoints to create.

Example

Query
mutation createDatapointFloat($datapoints: [DatapointInputFloat]!) {
  createDatapointFloat(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputFloat]}
Response
{"data": {"createDatapointFloat": {"ok": Empty}}}

createDatapointInteger

Description

Create Datapoints of type integer.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputInteger]! The Datapoints to create.

Example

Query
mutation createDatapointInteger($datapoints: [DatapointInputInteger]!) {
  createDatapointInteger(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputInteger]}
Response
{"data": {"createDatapointInteger": {"ok": Empty}}}

createDatapointJson

Description

Create Datapoints of type json.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputJson]! The Datapoints to create.

Example

Query
mutation createDatapointJson($datapoints: [DatapointInputJson]!) {
  createDatapointJson(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputJson]}
Response
{"data": {"createDatapointJson": {"ok": Empty}}}

createDatapointSelect

Description

Create Datapoints of type select.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputSelect]! The Datapoints to create.

Example

Query
mutation createDatapointSelect($datapoints: [DatapointInputSelect]!) {
  createDatapointSelect(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputSelect]}
Response
{"data": {"createDatapointSelect": {"ok": Empty}}}

createDatapointString

Description

Create Datapoints of type string.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputString]! The Datapoints to create.

Example

Query
mutation createDatapointString($datapoints: [DatapointInputString]!) {
  createDatapointString(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputString]}
Response
{"data": {"createDatapointString": {"ok": Empty}}}

createDatapointTime

Description

Create Datapoints of type time.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputTime]! The Datapoints to create.

Example

Query
mutation createDatapointTime($datapoints: [DatapointInputTime]!) {
  createDatapointTime(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputTime]}
Response
{"data": {"createDatapointTime": {"ok": Empty}}}

createDatapointTimespan

Description

Create Datapoints of type timespan.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputTimespan]! The Datapoints to create.

Example

Query
mutation createDatapointTimespan($datapoints: [DatapointInputTimespan]!) {
  createDatapointTimespan(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputTimespan]}
Response
{"data": {"createDatapointTimespan": {"ok": Empty}}}

createDatapointTimestamp

Description

Create Datapoints of type timestamp.

Response

Returns an EmptyResult

Arguments
Name Description
datapoints - [DatapointInputTimestamp]! The Datapoints to create.

Example

Query
mutation createDatapointTimestamp($datapoints: [DatapointInputTimestamp]!) {
  createDatapointTimestamp(datapoints: $datapoints) {
    ok
  }
}
Variables
{"datapoints": [DatapointInputTimestamp]}
Response
{"data": {"createDatapointTimestamp": {"ok": Empty}}}

createDefaultAuthenticationMethod

Description

Create an DomainAuthenticationMethod of type DEFAULT. This is used to setup DRIVR's internal OAuth2 authentication and allows DRIVR User with a password authenticate themselves. Only one DomainAuthenticationMethod of this type can be ACTIVATED at a time.

Response

Returns a DefaultAuthenticationMethod

Arguments
Name Description
status - Status The status of the DefaultDomainAuthenticationMethod.

Example

Query
mutation createDefaultAuthenticationMethod($status: Status) {
  createDefaultAuthenticationMethod(status: $status) {
    authenticationType
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    status
    updatedAt
    uuid
  }
}
Variables
{"status": "ACTIVATED"}
Response
{
  "data": {
    "createDefaultAuthenticationMethod": {
      "authenticationType": "AZURE_AD",
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createEvent

Description

Creates a new Event within DRIVR, given the UUIDs of the Entity and EventModel, and optionally, the start and end timestamps of the event.

Response

Returns an Event

Arguments
Name Description
endTime - DateTime The end date and time for the Event. If no value is passed, the current timestamp is used.
entityUuid - UUID! The UUID of the Entity to which the Event belongs.
eventModelUuid - UUID! The UUID of the EventModel which the Event is created from.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
time - DateTime The start date and time for the Event. If no value is passed, the current timestamp is used.

Example

Query
mutation createEvent(
  $endTime: DateTime,
  $entityUuid: UUID!,
  $eventModelUuid: UUID!,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $time: DateTime
) {
  createEvent(
    endTime: $endTime,
    entityUuid: $entityUuid,
    eventModelUuid: $eventModelUuid,
    metadataKeyValueStore: $metadataKeyValueStore,
    time: $time
  ) {
    acknowledged
    acks {
      ...PagedEventAcksFragment
    }
    createdAt
    endTime
    entity {
      ... on Component {
        ...ComponentFragment
      }
      ... on System {
        ...SystemFragment
      }
    }
    entityUuid
    eventModel {
      ...EventModelFragment
    }
    eventModelUuid
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    status
    time
    updatedAt
    uuid
  }
}
Variables
{
  "endTime": "2007-12-03T10:15:30Z",
  "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "eventModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "time": "2007-12-03T10:15:30Z"
}
Response
{
  "data": {
    "createEvent": {
      "acknowledged": true,
      "acks": PagedEventAcks,
      "createdAt": "2007-12-03T10:15:30Z",
      "endTime": "2007-12-03T10:15:30Z",
      "entity": Component,
      "entityUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "eventModel": EventModel,
      "eventModelUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "status": "ACTIVE",
      "time": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createEventModel

Description

Create a new EventModel based on the arguments provided.

Response

Returns an EventModel

Arguments
Name Description
code - String Defines a human-readable identifier for the EventModel.
entityType - EventEntityType! Describes the type of DRIVR entity an Event can correspond to e.g. Component, System, ….
eventLevel - EventLevel The event level of the EventModel.
eventType - EventType! Determines if the Events are of type SINGLE_POINT or RANGED. SINGLE_POINT Events are emitted for a single point in time. RANGED Events are emitted for a range of time.
limitToPrototypes - Boolean Whether Events may be emitted for all instances of a specific EntityType or only certain DRIVR entity prototypes (e.g. whether an Event can be emitted for all Components or only for Components that correspond to certain ComponentModels). This can be set by creating EventModelLinks. Can't be true if entity type is System.
message - String An optional message which can provide more detail about the derived Events.
metadataKeyValueStore - [MetadataKeyValuePairInput] The metadata key-value pair to set.
status - Status The status of the EventModel which can be ACTIVATED or DEACTIVATED. ARCHIVED is not allowed for newly created EventModels.

Example

Query
mutation createEventModel(
  $code: String,
  $entityType: EventEntityType!,
  $eventLevel: EventLevel,
  $eventType: EventType!,
  $limitToPrototypes: Boolean,
  $message: String,
  $metadataKeyValueStore: [MetadataKeyValuePairInput],
  $status: Status
) {
  createEventModel(
    code: $code,
    entityType: $entityType,
    eventLevel: $eventLevel,
    eventType: $eventType,
    limitToPrototypes: $limitToPrototypes,
    message: $message,
    metadataKeyValueStore: $metadataKeyValueStore,
    status: $status
  ) {
    code
    createdAt
    domain {
      ...DomainFragment
    }
    domainUuid
    entityType
    eventLevel
    eventModelLinks {
      ...PagedEventModelLinksFragment
    }
    eventType
    limitToPrototypes
    message
    metadataKeyValueStore {
      ...MetadataKeyValuePairFragment
    }
    status
    updatedAt
    uuid
  }
}
Variables
{
  "code": "xyz789",
  "entityType": "COMPONENT",
  "eventLevel": "ERROR",
  "eventType": "RANGED",
  "limitToPrototypes": false,
  "message": "abc123",
  "metadataKeyValueStore": [MetadataKeyValuePairInput],
  "status": "ACTIVATED"
}
Response
{
  "data": {
    "createEventModel": {
      "code": "abc123",
      "createdAt": "2007-12-03T10:15:30Z",
      "domain": Domain,
      "domainUuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13",
      "entityType": "COMPONENT",
      "eventLevel": "ERROR",
      "eventModelLinks": PagedEventModelLinks,
      "eventType": "RANGED",
      "limitToPrototypes": true,
      "message": "xyz789",
      "metadataKeyValueStore": [MetadataKeyValuePair],
      "status": "ACTIVATED",
      "updatedAt": "2007-12-03T10:15:30Z",
      "uuid": "a65ef5d4-0c36-40dc-98ce-2b6ba0bbbf13"
    }
  }
}

createGoogleAuthenticationMethod

Description

Create a new DomainAuthenticationMethod which allows authentication with Google Accounts. Only one GoogleAuthenticationMethod of this type can be ACTIVATED at a time.

Response

Returns a GoogleAuthenticationMethod

Arguments
Name Description
configuration - CreateGoogleAuthenticationMethodConfiguration The configuration settings of the DomainAuthenticationMethod for Google Account authentication.
status - Status The status of the GoogleAuthenticationMethod. This can not be ARCHIVED on creation.