Skip to main content

Device Profiles

A Device Profile defines a Device and its features on the SmartThings platform. It contains the Components (which contain Device Capabilities) 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'll need to create a Device Profile.

note

Devices using SmartThings Schema or 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
  • 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
  • Range
  • Receiver
  • Refrigerator
  • RemoteController
  • RiceCooker
  • RobotCleaner
  • ScaleToMeasureMassOfHumanBody
  • Scanner
  • SecurityPanel
  • SetTop
  • Shade
  • ShoesCareMachine
  • Siren
  • SmartLock
  • SmartPlug
  • SmokeDetector
  • SolarPanel
  • SoundSensor
  • SoundMachine
  • Speaker
  • StickVacuumCleaner
  • Storage
  • Stove
  • Switch
  • Television
  • TempSensor
  • Thermostat
  • Tracker
  • UPnPMediaRenderer
  • Vent
  • VisionSensor
  • VoiceAssistance
  • Washer
  • WaterHeater
  • WaterValve
  • WaterPurifier
  • WiFiRouter
  • Window
  • WineCellar

Create a Device Profile

You can create a new Device Profile from the Developer Workspace Develop menu. Here, you can specify Device metadata including Device Profile name, Device Type, and Vendor ID. You can also add Capabilities to your main Component from the Workspace.

Alternatively, you can use the SmartThings CLI to create, retrieve, update, and delete Device Profiles. The Device Profiles API can also be used to interact with and maintain Device Profiles.