Thing
Object
Contains the details about a thing.
type Thing implements GraphNode {
assetTrackingID: String
connectedDataSourceId: String
controls(filter: EntityFilter, transitive: Boolean = false): [ControlsUnion]
controlsEdges: [ControlsEdge]
dateCreated: DateTime
dateInstalled: DateTime
dateUpdated: DateTime
description: String
exactType: String
feeds(filter: EntityFilter, transitive: Boolean = false): [FeedsUnion]
feedsEdges: [FeedsEdge]
firmwareVersion: String
frameGeometry: GraphQLJSON
geoshape: GeoJSON
hasDeviceModel(filter: DeviceModelFilter, transitive: Boolean = false): DeviceModel
hasDeviceModelEdges: [HasDeviceModelEdge]
hasExtendedProperty(filter: ExtendedPropertyFilter, transitive: Boolean = false): [ExtendedProperty]
hasExtendedPropertyEdges: [HasExtendedPropertyEdge]
hasExternalReference(filter: BACnetDeviceObjectFilter, transitive: Boolean = false): [BACnetDeviceObject]
hasExternalReferenceEdges: [HasExternalReferenceEdge]
hasHeartbeat(filter: HeartbeatFilter, transitive: Boolean = false): Heartbeat
hasHeartbeatEdges: [HasHeartbeatEdge]
hasJoint(filter: KinematicJointFilter, transitive: Boolean = false): [KinematicJoint]
hasJointEdges: [HasJointEdge]
hasLocation(filter: PlaceFilter, transitive: Boolean = false): Place
hasLocationEdges: [HasLocationEdge]
hasPart(filter: ThingFilter, transitive: Boolean = false): [Thing]
hasPartEdges: [HasPartEdge]
hasPoint(filter: PointFilter, transitive: Boolean = false): [Point]
hasPointEdges: [HasPointEdge]
hasPrimBinding(filter: OpenUSDPrimBindingFilter, transitive: Boolean = false): [OpenUSDPrimBinding]
hasPrimBindingEdges: [HasPrimBindingEdge]
hasPropertyContributedFrom: [ThingHasPropertyContributedFromUnion]
hasPropertyContributedFromEdges: [ThingHasPropertyContributedFromEdge]
hosts(filter: PointFilter, transitive: Boolean = false): [Point]
hostsEdges: [HostsEdge]
id: String!
identities: [ThingIdentityUnion]
isControlledBy(filter: ThingFilter): [Thing]
isControlledByEdges: [IsControlledByEdge]
isFedBy(filter: EntityFilter, transitive: Boolean = false): [IsFedByUnion]
isFedByEdges: [IsFedByEdge]
isJointChildOf(filter: KinematicJointFilter): [KinematicJoint]
isJointChildOfEdges: [IsJointChildOfEdge]
isJointParentOf(filter: KinematicJointFilter): [KinematicJoint]
isJointParentOfEdges: [IsJointParentOfEdge]
isPartOf(filter: ThingFilter, transitive: Boolean = false): [Thing]
isPartOfEdges: [IsPartOfEdge]
isResponsibilityOf(filter: PeopleGroupFilter): [PeopleGroup]
isResponsibilityOfEdges: [IsResponsibilityOfEdge]
isVirtual: Boolean
locationName: String
manufacturedBy(filter: AgentFilter, transitive: Boolean = false): Agent
manufacturedByEdges: [ManufacturedByEdge]
mappingKey: String
model: DeviceLibraryModel @deprecated
name: String
organization: Org
places(filter: PlaceFilter): [Place]
points(filter: PointFilter): [Point]
pointsPaginated(filter: PointFilter, pagination: PageInfoInput): PointsConnection
rollingRadius: LengthQuantity
seeAlso: String
serialNumber: String
serves(filter: EntityFilter, transitive: Boolean = false): [ServesUnion]
servesEdges: [ServesEdge]
type: [String]
wheelAxleIndex: Int
wheelSide: String
}
Implements
Fields
| Field | Type | Description |
|---|---|---|
assetTrackingID | String | |
connectedDataSourceId | String | |
controls | [ControlsUnion] | Arguments: filter: EntityFilter, transitive: Boolean = false |
controlsEdges | [ControlsEdge] | |
dateCreated | DateTime | |
dateInstalled | DateTime | |
dateUpdated | DateTime | |
description | String | The description of a thing, like Rooftop Air Handler. |
exactType | String | This is the most specific type available for a thing, i.e. where 'type' may return a list like [Device, HVAC, Damper], exactType will return just Damper. |
feeds | [FeedsUnion] | Arguments: filter: EntityFilter, transitive: Boolean = false |
feedsEdges | [FeedsEdge] | |
firmwareVersion | String | This is primarily a Building Automation System field; when available, it will provide the firmware version for a device. |
frameGeometry | GraphQLJSON | |
geoshape | GeoJSON | The geographic shape of a thing, represented by latitude/longitude coordinate pairs. |
hasDeviceModel | DeviceModel | Arguments: filter: DeviceModelFilter, transitive: Boolean = false |
hasDeviceModelEdges | [HasDeviceModelEdge] | |
hasExtendedProperty | [ExtendedProperty] | Arguments: filter: ExtendedPropertyFilter, transitive: Boolean = false |
hasExtendedPropertyEdges | [HasExtendedPropertyEdge] | |
hasExternalReference | [BACnetDeviceObject] | Arguments: filter: BACnetDeviceObjectFilter, transitive: Boolean = false |
hasExternalReferenceEdges | [HasExternalReferenceEdge] | |
hasHeartbeat | Heartbeat | Arguments: filter: HeartbeatFilter, transitive: Boolean = false |
hasHeartbeatEdges | [HasHeartbeatEdge] | |
hasJoint | [KinematicJoint] | The kinematic joints of this thing - the degrees of freedom between it and its parts. Arguments: filter: KinematicJointFilter, transitive: Boolean = false |
hasJointEdges | [HasJointEdge] | |
hasLocation | Place | This represents the location of a thing, such as a space name. Arguments: filter: PlaceFilter, transitive: Boolean = false |
hasLocationEdges | [HasLocationEdge] | |
hasPart | [Thing] | If a thing has any additional parts, like a VAV with a damper, the damper will be referenced here. Arguments: filter: ThingFilter, transitive: Boolean = false |
hasPartEdges | [HasPartEdge] | |
hasPoint | [Point] | _ Arguments: filter: PointFilter, transitive: Boolean = false |
hasPointEdges | [HasPointEdge] | |
hasPrimBinding | [OpenUSDPrimBinding] | The OpenUSD prim bindings attached to this thing - the prim addresses that represent it in a USD stage. Arguments: filter: OpenUSDPrimBindingFilter, transitive: Boolean = false |
hasPrimBindingEdges | [HasPrimBindingEdge] | |
hasPropertyContributedFrom | [ThingHasPropertyContributedFromUnion] | |
hasPropertyContributedFromEdges | [ThingHasPropertyContributedFromEdge] | |
hosts | [Point] | Arguments: filter: PointFilter, transitive: Boolean = false |
hostsEdges | [HostsEdge] | |
id | String! | The unique ID of a thing. |
identities | [ThingIdentityUnion] | |
isControlledBy | [Thing] | Arguments: filter: ThingFilter |
isControlledByEdges | [IsControlledByEdge] | |
isFedBy | [IsFedByUnion] | _ Arguments: filter: EntityFilter, transitive: Boolean = false |
isFedByEdges | [IsFedByEdge] | |
isJointChildOf | [KinematicJoint] | The joints of which this thing is the moving side. Arguments: filter: KinematicJointFilter |
isJointChildOfEdges | [IsJointChildOfEdge] | |
isJointParentOf | [KinematicJoint] | The joints of which this thing is the fixed side. Arguments: filter: KinematicJointFilter |
isJointParentOfEdges | [IsJointParentOfEdge] | |
isPartOf | [Thing] | If a thing is 'a part of' a different device, like a damper that's part of a VAV, the VAV will be referenced here. Arguments: filter: ThingFilter, transitive: Boolean = false |
isPartOfEdges | [IsPartOfEdge] | |
isResponsibilityOf | [PeopleGroup] | Arguments: filter: PeopleGroupFilter |
isResponsibilityOfEdges | [IsResponsibilityOfEdge] | |
isVirtual | Boolean | |
locationName | String | |
manufacturedBy | Agent | Arguments: filter: AgentFilter, transitive: Boolean = false |
manufacturedByEdges | [ManufacturedByEdge] | |
mappingKey | String | _ |
model | DeviceLibraryModel | Deprecated No longer supported. Scheduled for removal on 02/21/2024. Use hasDeviceModel and manufacturedBy query as an alternative. If available, the model - along with manufacturer information - of a thing will be outlined here. |
name | String | The name of a thing, usually abbreviations of the thing's description along with location details and/or BAS information. |
organization | Org | The organization a thing belongs to; this field will be restricted by access rights. |
places | [Place] | The details of the place(s) where a thing is located, such as a specific building, floor, or space. Arguments: filter: PlaceFilter |
points | [Point] | A list of points associated with a thing, such as a temperature setting for a thermostat. Not all things will have points. Arguments: filter: PointFilter |
pointsPaginated | PointsConnection | Cursor paginated variant of "points". Prefer it over "points" whenever an organization can have a large number of points - it pages results through the search index instead of materializing every match. Arguments: filter: PointFilter, pagination: PageInfoInput |
rollingRadius | LengthQuantity | The rolling radius of a wheel, as a quantity whose unit travels with the value. Set on a thing whose exactType is Wheel. |
seeAlso | String | |
serialNumber | String | |
serves | [ServesUnion] | Arguments: filter: EntityFilter, transitive: Boolean = false |
servesEdges | [ServesEdge] | |
type | [String] | The class or subclass of a thing, like HVAC and AHU. |
wheelAxleIndex | Int | Which axle a wheel is on, zero-based, front to back. Set on a thing whose exactType is Wheel. |
wheelSide | String | LEFT, RIGHT or CENTER. Set on a thing whose exactType is Wheel. |
Used by
Building.isFedBy(field)Building.isServedBy(field)Building.things(field)Collection.isControlledBy(field)Connector.things(field)Floor.isFedBy(field)Floor.isServedBy(field)Floor.things(field)GenericPlace.isFedBy(field)GenericPlace.isServedBy(field)GenericPlace.things(field)Heartbeat.isHostedBy(field)KinematicJoint.hasJointChild(field)KinematicJoint.hasJointParent(field)KinematicJoint.isJointOf(field)Org.things(field)Organization.isServedBy(field)PeopleGroup.isResponsibleFor(field)PeopleGroup.isServedBy(field)Place.isFedBy(field)Place.isServedBy(field)Place.things(field)Point.isHostedBy(field)PrismaticJoint.hasJointChild(field)PrismaticJoint.hasJointParent(field)PrismaticJoint.isJointOf(field)RevoluteJoint.hasJointChild(field)RevoluteJoint.hasJointParent(field)RevoluteJoint.isJointOf(field)Site.isFedBy(field)Site.isServedBy(field)Site.things(field)Space.isFedBy(field)Space.isServedBy(field)Space.things(field)SubBuilding.isFedBy(field)SubBuilding.isServedBy(field)SubBuilding.things(field)Thing.hasPart(field)Thing.isControlledBy(field)Thing.isPartOf(field)ThingContainer.things(field)things(query)Zone.isFedBy(field)Zone.isServedBy(field)Zone.things(field)