Skip to content

Glossary

SmartHQ uses several terms and domain-specific language that may be unfamiliar to some readers. This page defines and clarifies key terms as they are used in the context of the SmartHQ APIs.

Access Token

A credential used to authorize API requests. This credential is passed as a bearer token to the Digital Twin API and is obtained through the OAuth flow.

Adapter

A special OAuth application in the SmartHQ system. This is a server-side application that manages multiple gateways of a single type. It is also responsible for routing outbound requests to its gateways.

Alert

A notification indicating a specific condition or event related to a device, such as a cycle completing (cloud.smarthq.alert.endofcycle).

AlertType

The JSON key used to identify an alert in API requests and responses ("alertType": "cloud.smarthq.alert.pausedcycle").

API

An interface that allows software applications to communicate with each other. APIs define the methods, inputs, and outputs required to access SmartHQ functionality securely and reliably.

App (Application)

Software—typically mobile or web-based—that integrates with SmartHQ APIs to access and control devices on behalf of an end-user. In the Developer Portal, creating an app provides the credentials needed to connect your software to the SmartHQ system. The Developer Portal app mirrors and represents the actual application you're building or built.

AppId

A unique identifier assigned to a SmartHQ application when the application is created on the SmartHQ Developer Portal.

Appliance

A physical product, such as a refrigerator, oven, or washer. For SmartHQ compatibility, an appliance must have an internet connection.

AsyncAPI

A specification for documenting asynchronous APIs, particularly those using event-driven architectures like Pubsub. Used to describe SmartHQ's Event Stream API.

Asynchronous

A communication pattern in which a message is sent without being directly requested. In SmartHQ, events defined by the Event Stream API, such as device alerts or device state changes, are delivered asynchronously via WebSocket or callback.

Authentication

The process of verifying the identity of a user attempting to access SmartHQ services.

Authorization

The process of determining whether a user or developer has permission to access a specific resource or perform an action.

Authorization Code

A temporary code issued during the OAuth 2.0 flow that a client exchanges for an access token.

Authorization Header

An HTTP header used to transmit authorization credentials, such as a Bearer token, in API requests.

Bearer Token

A type of access token used in the Authorization header to authenticate API requests. It grants access to SmartHQ resources on behalf of an end-user.

Callback

A delivery method where SmartHQ sends a message or authorization code to a developer-defined URL.

ClientId

A public identifier issued to each application integrating with SmartHQ. It is used during OAuth flows to identify the calling app.

ClientSecret

A confidential key associated with a ClientId, used to authenticate the application during OAuth flows.

Command

A request to a device to execute an action as defined by a service.

Commissioning

The process by which a device owner connects their device to Wi-Fi and links it to their SmartHQ account, enabling remote control and monitoring.

Configuration

The service configuration contains properties specific to the service type, which define its boundaries, such as supported modes for the mode service or max/min temperatures for the temperature service.

Data Model

The structured representation of SmartHQ services, devices, and states, including their properties, relationships, and valid values.

Developer Portal

The central website for developers to explore SmartHQ APIs, create apps, get credentials, and access documentation.

Device

A connected appliance or sensor that is registered and managed through a gateway—such as a washing machine, light bulb, or door sensor. Each device consists of one or more services that define its capabilities and interactions.

Domain

In SmartHQ, a domain indicates where in a device a service is located. It can also be used to specify the purpose of a device or sub-device.

DomainType

The JSON key used to identify a domain in API requests and responses ("domainType": "cloud.smarthq.domain.laundry").

End-User

A device (appliance) owner who gives a SmartHQ application access to their devices.

Gateway

The entity that exposes an end-user's devices and makes calls to the Device API on behalf of devices. A gateway is registered to a single end-user account and corresponds to a single adapter type. A gateway can be either physical (e.g., Kitchen Hub) or virtual. Every entity in this architecture MUST contain a gateway that interfaces with an adapter. For example, a single device, like a washing machine, will have a logical gateway that handles the connection to the adapter and exposes the device(s).

HTTPS Callback

A method of event delivery where SmartHQ sends HTTP POST requests to a secure client-defined URL in real time when device events occur.

Machine Name

The name of the app created in SmartHQ. This name is shown to end-users who authorize an app to control and monitor their devices.

OAuth

An open standard for secure authorization. SmartHQ uses OAuth 2.0 to allow developer apps to request access to user devices without handling user credentials directly.

OpenAPI

A specification for documenting RESTful APIs that SmartHQ uses for many of its APIs on the Developer Portal.

Postman

A popular tool for calling APIs. SmartHQ provides instructions to help developers explore their APIs and start making API calls quickly.

Provisioning Token

A credential used to connect a gateway to a SmartHQ account. This credential is generated by the /v2/gateway Digital Twin API endpoint and is exchanged for a Gateway Access Token through the Device Adapter API.

Refresh Token

A long-lived credential that can be passed to the Identity and Access Management /oauth2/token endpoint to gain a new access token without requiring the end-user to reauthorize.

Register (Registration)

The process of creating an account in SmartHQ. This is a necessary step in gaining access to the SmartHQ Developer Portal.

Service

A feature available on a device that can communicate properties, states, and receive commands. Services have a supportedCommands property that defines the list of commands a client can run on a service (as long as the disabled state is not true).

Service Alerts

Alerts in the SmartHQ system that pertain to errors devices face, such as cloud.smarthq.alert.fault.defrost.abnormal.

ServiceDeviceType

The JSON key used to identify a serviceDevice in API requests and responses ("serviceDeviceType": "cloud.smarthq.device.dryer").

ServiceId

A unique identifier for a particular service. This can be used in the Digital Twin API to get information about a service.

ServiceType

A serviceType is an archetype for the behavior of a certain feature (e.g., toggle [on/off], mode, integer, etc.).

SmartHQ

A connected appliance ecosystem by GE Appliances that allows users and third-party apps to remotely monitor, control, and automate smart devices.

SNS Callback

A delivery method where SmartHQ publishes events to an Amazon SNS topic. The SNS topic then forwards the events to client-subscribed endpoints.

State

The state of a service describes its current status, for example, on/off for a toggle service or the current mode for a mode service.

Synchronous

A communication pattern where a client sends a request and waits for a response. In SmartHQ, this applies to all APIs except the Event Stream API.

Tuple

For each service of a device: (serviceType, domainType, and serviceDeviceType). The combination of serviceType, domainType, and serviceDeviceType describes the specific feature (e.g., serviceType = toggle, domain = sound, serviceDeviceType = appliance will turn on and off the sound when buttons are pressed).

WebSocket

A real-time, bidirectional communication channel between an app and SmartHQ, used for receiving live device updates and configuring subscriptions.