Skip to main content

Device Profiles

A Device Profile serves as a blueprint for a device. It defines the features and UI presentation of a device on the SmartThings platform.

A Device Profile contains the Capabilities (grouped into Components) and metadata (ID, name, ownership, and more) of a device, defining how a device on the SmartThings platform behaves. Before joining your device to the SmartThings platform, you will need to create or choose a Device Profile for your device.

note

Devices using SmartThings Edge use "implicit profiles" and do not require you to create a Device Profile for these devices.

Components

Components are used to include and group Capabilities in a Device Profile. A Device Profile must have at least one Component. This Component is named main by convention for all profiles with a single Component. Each Component must include at least one Capability:

{
"id": "<Device-Profile-ID-Here>",
"name": "sample",
"components": [
{
"label": "main",
"id": "main",
"capabilities": [
{
"id": "accelerationSensor",
"version": 1
}
],
"categories": []
}
],
"metadata": {
"vid": "sample",
"deviceType": "AirConditioner",
"ocfDeviceType": "oic.d.airconditioner",
"mnmn": "fNTD",
"deviceTypeId": "AirConditioner",
"ocfSpecVer": "core 1.1.0",
"mnid": "fNTD",
"mnId": "fNTD"
},
"status": "DEVELOPMENT",
"preferences": [],
"owner": {
"ownerType": "USER",
"ownerId": "<Owner-ID-Here>"
}
}
note

Using multiple components is suggested when the Device is separated into different endpoints that use the same Capability. A Capability cannot be added more than once in a single component (e.g. a 3-gang Switch).

Each component appears separate and is labeled in the Device's Detail View so you can identify its status.

Categories

categories is a required parameter that helps define what kind of device is being interacted with. SmartThings has an expanding list of device categories that work with our platform.

Below is a list of currently supported categories. The platform provides a default icon based on the category specified for the device.

  • AirConditioner
  • AirPurifier
  • AirQualityDetector
  • Battery
  • Bed
  • Bidet
  • Blind
  • BluRayPlayer
  • BluetoothCarSpeaker
  • BluetoothTracker
  • Bridges
  • Button
  • Camera
  • Car
  • Charger
  • ClothingCareMachine
  • CoffeeMaker
  • ContactSensor
  • Cooktop
  • CubeRefrigerator
  • CurbPowerMeter
  • Dehumidifier
  • Dishwasher
  • Door
  • DoorBell
  • Dryer
  • Earbuds
  • ElectricVehicleCharger
  • Elevator
  • Fan
  • Feeder
  • FitnessMat
  • Flashlight
  • GarageDoor
  • GasValve
  • GasMeter
  • GenericSensor
  • HealthTracker
  • Heatedmattresspad
  • HomeTheater
  • Hub
  • Humidifier
  • HumiditySensor
  • IrRemote
  • Irrigation
  • KimchiRefrigerator
  • KitchenHood
  • LeakSensor
  • Light
  • LightSensor
  • MicroFiberFilter
  • Microwave
  • Mobile
  • MobilePresence
  • MotionSensor
  • MultiFunctionalSensor
  • NetworkAudio
  • Networking
  • Others
  • Oven
  • PresenceSensor
  • Printer
  • PrinterMultiFunction
  • Projector
  • Pump
  • RainSensor
  • Range
  • Receiver
  • Refrigerator
  • RemoteController
  • RiceCooker
  • RobotCleaner
  • Safe
  • ScaleToMeasureMassOfHumanBody
  • Scanner
  • SecurityPanel
  • SetTop
  • Shade
  • ShoesCareMachine
  • Shower
  • Siren
  • SmartLock
  • SmartMonitor
  • SmartPlug
  • SmokeDetector
  • SolarPanel
  • SoundSensor
  • SoundMachine
  • Speaker
  • StickVacuumCleaner
  • Storage
  • Stove
  • Switch
  • Television
  • TempHumiditySensor
  • TempSensor
  • Thermostat
  • Tracker
  • UPnPMediaRenderer
  • Vent
  • VisionSensor
  • VoiceAssistance
  • Washer
  • WaterFreezeDetector
  • WaterHeater
  • WaterValve
  • WaterPurifier
  • WeatherStation
  • WiFiRouter
  • Window
  • WineCellar

UI Presentation

A Device Profile may optionally reference a Device Presentation in the Device Profile's metadata vid field. The Device Presentation defines how the device and its Capabilities are displayed in the SmartThings app.

To create a Device Presentation, you will first create a a Device Configuration, which is then used to generate a Device Presentation. When a Device Presentation is created, a UUID will be provided to you - this UUID is then included in your Device Profile. Learn more about this process in the Device Configuration section.

Create a Device Profile

Using the SmartThings CLI

You can create a new Device Profile using the SmartThings CLI. Here you can create, retrieve, update, and delete Device Profiles. The Device Profiles API can also be used to interact with and maintain Device Profiles.