Capabilities that can be used in drivers (or selected for in apps), along with any commands (methods) and attributes that they require.
capability.accelerationSensor
capability "AccelerationSensor"
acceleration - ENUM ["inactive", "active"]capability.actuator
capability "Actuator"
capability.airQuality
capability "AirQuality"
airQualityIndex - NUMBER, range:0..500
capability.alarm
capability "Alarm"
alarm - ENUM ["strobe", "off", "both", "siren"]both()off()siren()strobe()capability.audioNotification
capability "AudioNotification"
playText(text, volumelevel)
text required (STRING) - Text to playvolumelevel optional (NUMBER) - Volume level (0 to 100)playTextAndRestore(text, volumelevel)
text required (STRING) - Text to playvolumelevel optional (NUMBER) - Volume level (0 to 100)playTextAndResume(text, volumelevel)
text required (STRING) - Text to play
volumelevel optional (NUMBER) - Volume level (0 to 100)playTrack(trackuri, volumelevel)
trackuri required (STRING) - URI/URL of track to playvolumelevel optional (NUMBER) - Volume level (0 to 100)playTrackAndRestore(trackuri, volumelevel)
trackuri required (STRING) - URI/URL of track to playvolumelevel optional (NUMBER) - Volume level (0 to 100)playTrackAndResume(trackuri, volumelevel)
trackuri required (STRING) - URI/URL of track to playvolumelevel optional (NUMBER) - Volume level (0 to 100)capability.audioVolume
capability "AudioVolume"
mute - ENUM ["unmuted", "muted"]volume - NUMBER, unit:%mute()setVolume(volumelevel)
volumelevel required (NUMBER) - Volume level (0 to 100)unmute()volumeDown()volumeUp()capability.battery
capability "Battery"
battery - NUMBER, unit:%capability.beacon
capability "Beacon"
presence - ENUM ["not present", "present"]capability.bulb
capability "Bulb"
switch - ENUM ["on", "off"]
off()on()capability.button
capability "Button"
button - NUMBERholdableButton - ENUM ["true", "false"]numberOfButtons - NUMBERcapability.carbonDioxideMeasurement
capability "CarbonDioxideMeasurement"
carbonDioxide - NUMBER, unit:ppmcapability.carbonMonoxideDetector
capability "CarbonMonoxideDetector "
carbonMonoxide - ENUM ["clear", "tested", "detected"]capability.changeLevel
capability "ChangeLevel"
startLevelChange(direction)
direction required (ENUM) - Direction for level change requeststopLevelChange()capability.chime
capability "Chime"
soundEffects - JSON_OBJECTsoundName - STRINGstatus - ENUM ["playing", "stopped"]playSound(soundnumber)
soundnumber required (NUMBER) - Sound number to playstop()capability.colorControl
capability "ColorControl"
RGB - STRINGcolor - STRINGcolorName - STRINGhue - NUMBERsaturation - NUMBER, unit:%setColor(colormap)
colormap required (COLOR_MAP) - Map of color settings in HSV/HSB format using keys hue, saturation, and (optionally) level:
hue: 0-100 (hue as percent)saturation: 0-100 (saturation as percent)level: 0-100 (brightness/value as pecent)setHue(hue)
hue required (NUMBER) - Color hue (0 to 100)setSaturation(saturation)
saturation required (NUMBER) - Color saturation (0 to 100)capability.colorMode
capability "ColorMode"
colorMode - ENUM ["CT", "RGB", "EFFECTS"]capability.colorTemperature
capability "ColorTemperature"
colorName - STRINGcolorTemperature - NUMBER, unit:°KsetColorTemperature(colortemperature, level, transitionTime)
colortemperature required (NUMBER) - Color temperature in degrees Kelvinlevel optional (NUMBER) - level to settransitionTime optional (NUMBER) - transition time to use in secondscapability.configuration
capability "Configuration"
configure()capability.consumable
capability "Consumable"
consumableStatus - ENUM ["missing", "order", "maintenance_required", "good", "replace"]setConsumableStatus(STRING)
STRING (STRING) - STRINGcapability.contactSensor
capability "ContactSensor"
contact - ENUM ["closed", "open"]capability.currentMeter
capability "CurrentMeter"
amperage - NUMBER, unit:Acapability.doorControl
capability "DoorControl"
door - ENUM ["unknown", "closed", "open", "closing", "opening"]close()open()capability.doubleTapableButton
capability "DoubleTapableButton"
doubleTapped - NUMBERdoubleTap(buttonNumber)
buttonNumber required (NUMBER)capability.energyMeter
capability "EnergyMeter"
energy - NUMBER, unit:kWhcapability.estimatedTimeOfArrival
capability "EstimatedTimeOfArrival"
eta - DATEcapability.fanControl
capability "FanControl"
speed - ENUM ["low","medium-low","medium","medium-high","high","on","off","auto"]supportedFanSpeeds - JSON_OBJECTsetSpeed(fanspeed)
fanspeed required (ENUM) - Fan speed to setcycleSpeed()capability.filterStatus
capability "FilterStatus"
filterStatus - ENUM ["normal", "replace"]capability.flash
capability "Flash"
flash(rateToFlash)
rateToFlash optional (NUMBER) Rate to flash in mscapability.garageDoorControl
capability "GarageDoorControl"
door - ENUM ["unknown", "open", "closing", "closed", "opening"]close()open()capability.gasDetector
capability "GasDetector"
naturalGas - ENUM ["clear", "tested", "detected"]capability.healthCheck
capability "HealthCheck"
checkInterval - NUMBERping()capability.holdableButton
capability "HoldableButton"
held - NUMBERhold(buttonNumber)
buttonNumber required (NUMBER)capability.illuminanceMeasurement
capability "IlluminanceMeasurement"
illuminance - NUMBER, unit:lxcapability.imageCapture
capability "ImageCapture"
image - STRINGtake()capability.indicator
capability "Indicator"
indicatorStatus - ENUM ["never", "when on", "when off"]indicatorNever()indicatorWhenOff()indicatorWhenOn()capability.initialize
capability "Initialize"
initialize() - this method will run on system start on devices using capability "Initialize" (one common use is re-establishing telnet, websocket, or similar LAN connections for such devices)capability.light
capability "Light"
switch - ENUM ["on", "off"]off()on()capability.lightEffects
capability "LightEffects"
effectName - STRINGlightEffects - JSON_OBJECTsetEffect(effectnumber)
effectnumber required (NUMBER) - Effect number to enablesetNextEffect()setPreviousEffect()capability.liquidFlowRate
capability "LiquidFlowRate"
rate - NUMBER, unit:LPM || GPMcapability.locationMode
capability "LocationMode"
mode - DYNAMIC_ENUMcapability.lock
capability "Lock"
lock - ENUM ["locked", "unlocked with timeout", "unlocked", "unknown"]lock()unlock()capability.lockCodes
capability "LockCodes"
codeChanged - ENUM ["added", "changed", "deleted", "failed"]codeLength - NUMBERlockCodes - JSON_OBJECTmaxCodes - NUMBERdeleteCode(codeposition)
codeposition required (NUMBER) - Code position number to deletegetCodes()setCode(codeposition, pincode, name)
codeposition required (NUMBER) - Code position numberpincode required (STRING) - Numeric PIN codename optional (STRING) - Name for this lock codesetCodeLength(pincodelength)
pincodelength required (NUMBER) - Maximum pin code lentgh for this lockcapability.mediaController
capability "MediaController"
activities - JSON_OBJECTcurrentActivity - STRINGgetAllActivities()getCurrentActivity()startActivity(activityname)
activityname required (STRING) - Name of media activity to startcapability.mediaInputSource
capability "MediaInputSource"
supportedInputs - JSON_OBJECTmediaInputSource - STRINGsetInputSource(inputName)
inputName required (STRING) - Input to selectcapability.mediaTransport
capability "MediaTransport"
transportStatus - ENUM - ["playing", "paused", "stopped"]
play()pause()stop()capability.momentary
capability "Momentary"
push()capability.motionSensor
capability "MotionSensor"
motion - ENUM ["inactive", "active"]
capability.musicPlayer
capability "MusicPlayer"
level - NUMBERmute - ENUM ["unmuted", "muted"]status - STRINGtrackData - JSON_OBJECTtrackDescription - STRINGmute()nextTrack()pause()play()playText(text)
text required (STRING) - Text to playplayTrack(trackuri)
trackuri required (STRING) - URI/URL of track to playpreviousTrack()restoreTrack(trackuri)
trackuri required (STRING) - URI/URL of track to restoreresumeTrack(trackuri)
trackuri required (STRING) - URI/URL of track to playsetLevel(volumelevel)
volumelevel required (NUMBER) - Volume level (0 to 100)setTrack(trackuri)
trackuri required (STRING) - URI/URL of track to setstop()unmute()capability.notification
capability "Notification"
deviceNotification(text)text required (STRING) - Notification text
capability.outlet
capability "Outlet"
switch - ENUM ["on", "off"]
off()on()capability.polling
capability "Polling"
poll()capability.powerMeter
capability "PowerMeter"
power - NUMBER, unit:Wcapability.powerSource
capability "PowerSource"
powerSource - ENUM ["battery", "dc", "mains", "unknown"]capability.presenceSensor
capability "PresenceSensor"
presence - ENUM ["present", "not present"]capability.pressureMeasurement
capability "PressureMeasurement"
pressure - NUMBER, unit: Pa || psicapability.pushableButton
capability "PushableButton"
numberOfButtons - NUMBERpushed - NUMBERpush(buttonNumber)
buttonNumber required (NUMBER)capability.refresh
capability "Refresh"
refresh()
capability.relativeHumidityMeasurement
capability "RelativeHumidityMeasurement"
humidity - NUMBER, unit:%rhcapability.relaySwitch
capability "RelaySwitch"
switch - ENUM ["on", "off"]off()on()capability.releasableButton
capability "ReleasableButton"
released - NUMBER
release(buttonNumber)
buttonNumber required (NUMBER)capability.samsungTV
capability "SamsungTV"
messageButton - JSON_OBJECTmute - ENUM ["muted", "unknown", "unmuted"]pictureMode - ENUM ["unknown", "standard", "movie", "dynamic"]soundMode - ENUM ["speech", "movie", "unknown", "standard", "music"]switch - ENUM ["on", "off"]volume - NUMBERmute()off()on()setPictureMode(ENUM)
ENUM (ENUM) - ENUMsetSoundMode(ENUM)
ENUM (ENUM) - ENUMsetVolume(NUMBER)
NUMBER (NUMBER) - NUMBERshowMessage(STRING, STRING, STRING, STRING)
STRING (STRING) - STRINGSTRING (STRING) - STRINGSTRING (STRING) - STRINGSTRING (STRING) - STRINGunmute()volumeDown()volumeUp()capability.securityKeypad
capability "SecurityKeypad"
codeChanged - ENUM ["added", "changed", "deleted", "failed"]codeLength - NUMBERlockCodes - JSON_OBJECTmaxCodes - NUMBERsecurityKeypad - ENUM ["disarmed", "armed home", "armed away", "unknown"]armAway()armHome()deleteCode(codeposition)
codeposition required (NUMBER) - Code position number to deletedisarm()getCodes()setCode(codeposition, pincode, name)
codeposition required (NUMBER) - Code position numberpincode required (STRING) - Numeric PIN codename optional (STRING) - Name for this lock codesetCodeLength(pincodelength)
pincodelength required (NUMBER) - Maximum pin code lentgh for this keypadsetEntryDelay(entrancedelay)
entrancedelay required (NUMBER) - Entrance delay in secondssetExitDelay(exitdelay)
exitdelay required (NUMBER) - Exit delay in secondscapability.sensor
capability "Sensor"
capability.shockSensor
capability "ShockSensor"
shock - ENUM ["clear", "detected"]capability.signalStrength
capability "SignalStrength"
lqi - NUMBERrssi - NUMBERcapability.sleepSensor
capability "SleepSensor"
sleeping - ENUM ["not sleeping", "sleeping"]capability.smokeDetector
capability "SmokeDetector"
smoke - ENUM ["clear", "tested", "detected"]capability.soundPressureLevel
capability "SoundPressureLevel"
soundPressureLevel - NUMBER, unit:dBcapability.soundSensor
capability "SoundSensor"
sound - ENUM ["detected", "not detected"]capability.speechRecognition
capability "SpeechRecognition"
phraseSpoken - STRINGcapability.speechSynthesis
capability "SpeechSynthesis"
speak(text, volume, voice)
text required (STRING) - Text to speakvolume optional (NUMBER)voice optional (STRING) - AWS Polly voice namecapability.stepSensor
capability "StepSensor"
goal - NUMBERsteps - NUMBERcapability.switch
capability "Switch"
switch - ENUM ["on", "off"]off()on()capability.switchLevel
capability "SwitchLevel"
level - NUMBER, unit:%setLevel(level, duration)
level required (NUMBER) - Level to set (0 to 100)duration optional (NUMBER) - Transition duration in secondscapability.tv
capability "TV"
channel - NUMBERmovieMode - STRINGpicture - STRINGpower - STRINGsound - STRINGvolume - NUMBERchannelDown()channelUp()volumeDown()volumeUp()capability.tamperAlert
capability "TamperAlert"
tamper - ENUM ["clear", "detected"]capability.telnet
capability "Telnet"
networkStatus - ENUM ["online", "offline"]sendMsg(message)
message required (STRING) - Text message to sendcapability.temperatureMeasurement
capability "TemperatureMeasurement"
temperature - NUMBER, unit:°F || °Ccapability.testCapability
capability "TestCapability"
capability.thermostat
capability "Thermostat"
coolingSetpoint - NUMBER, unit:°F || °CheatingSetpoint - NUMBER, unit:°F || °Cschedule - JSON_OBJECT (Deprecated)supportedThermostatFanModes - JSON_OBJECTsupportedThermostatModes - JSON_OBJECTtemperature - NUMBER, unit:°F || °CthermostatFanMode - ENUM ["on", "circulate", "auto"]thermostatMode - ENUM ["auto", "off", "heat", "emergency heat", "cool"]thermostatOperatingState - ENUM ["heating", "pending cool", "pending heat", "vent economizer", "idle", "cooling", "fan only"]thermostatSetpoint - NUMBER, unit:°F || °Cauto()cool()emergencyHeat()fanAuto()fanCirculate()fanOn()heat()off()setCoolingSetpoint(temperature)
temperature required (NUMBER) - Cooling setpoint in degreessetHeatingSetpoint(temperature)
temperature required (NUMBER) - Heating setpoint in degreessetSchedule(JSON_OBJECT) (Deprecated)
JSON_OBJECT (JSON_OBJECT) - JSON_OBJECT (Deprecated)setThermostatFanMode(fanmode)
fanmode required (ENUM) - Fan mode to setsetThermostatMode(thermostatmode)
thermostatmode required (ENUM) - Thermostat mode to setcapability.thermostatCoolingSetpoint
capability "ThermostatCoolingSetpoint"
coolingSetpoint - NUMBER, unit:°F || °CsetCoolingSetpoint(temperature)
temperature required (NUMBER) - Cooling setpoint in degreescapability.thermostatFanMode
capability "ThermostatFanMode"
thermostatFanMode - ENUM ["auto", "circulate", "on"]fanAuto()fanCirculate()fanOn()setThermostatFanMode(fanmode)
fanmode required (ENUM) - Fan mode to setcapability.thermostatHeatingSetpoint
capability "ThermostatHeatingSetpoint"
heatingSetpoint - NUMBER, unit:°F || °CsetHeatingSetpoint(temperature)
temperature required (NUMBER) - Heating setpoint in degreescapability.thermostatMode
capability "ThermostatMode"
thermostatMode - ENUM ["heat", "cool", "emergency heat", "auto", "off"]auto()cool()emergencyHeat()heat()off()setThermostatMode(thermostatmode)
thermostatmode required (ENUM) - Thermostat mode to setcapability.thermostatOperatingState
capability "ThermostatOperatingState"
thermostatOperatingState - ENUM ["vent economizer", "pending cool", "cooling", "heating", "pending heat", "fan only", "idle"]capability.thermostatSchedule
capability "ThermostatSchedule"
schedule - JSON_OBJECTsetSchedule(JSON_OBJECT)
JSON_OBJECT (JSON_OBJECT) - JSON_OBJECTcapability.thermostatSetpoint
capability "ThermostatSetpoint"
thermostatSetpoint - NUMBER, unit:°F || °Ccapability.threeAxis
capability "ThreeAxis"
threeAxis - VECTOR3capability.timedSession
capability "TimedSession"
sessionStatus - ENUM ["stopped", "canceled", "running", "paused"]timeRemaining - NUMBERcancel()pause()setTimeRemaining(NUMBER)
NUMBER (NUMBER) - NUMBERstart()stop()capability.tone
capability "Tone"
beep()capability.touchSensor
capability "TouchSensor"
touch - ENUM ["touched"]capability.ultravioletIndex
capability "UltravioletIndex"
ultravioletIndex - NUMBERcapability.valve
capability "Valve"
valve - ENUM ["open", "closed"]close()open()capability.variable
capability "Variable"
variable - STRINGsetVariable(valueToSet)
valueToSet required (STRING)capability.videoCapture
capability "VideoCamera"camera - ENUM ["on", "off", "restarting", "unavailable"]mute - ENUM ["unmuted", "muted"]settings - JSON_OBJECTstatusMessage - STRINGflip()mute()off()on()unmute()capability.videoCapture
capability "VideoCapture"
clip - JSON_OBJECTcapture(DATE, DATE, DATE)
DATE (DATE) - DATEDATE (DATE) - DATEDATE (DATE) - DATEcapability.voltageMeasurement
capability "VoltageMeasurement"
voltage - NUMBER, unit:Vfrequency - NUMBER, unit:Hzcapability.waterSensor
capability "WaterSensor"
water - ENUM ["wet", "dry"]capability.windowBlind
capability "WindowBlind"
position - NUMBER, unit:%windowBlind - ENUM ["opening", "partially open", "closed", "open", "closing", "unknown"]tilt - NUMBER, unit:%close()open()setPosition(position)
position required (NUMBER) - Shade position (0 to 100)startPositionChange(direction)
direction required (ENUM) - Direction for position change request ["open", "close"]stopPositionChange()setTiltLevel(tilt)
tilt required (NUMBER) - Tilt percent (0 to 100)capability.windowShade
capability "WindowShade"
position - NUMBER, unit:%windowShade - ENUM ["opening", "partially open", "closed", "open", "closing", "unknown"]close()open()setPosition(position)
position required (NUMBER) - Shade position (0 to 100)startPositionChange(direction)
direction required (ENUM) - Direction for position change request ["open", "close"]stopPositionChange()capability.zwMultichannel
capability "ZwMultichannel"
epEvent - STRINGepInfo - STRINGenableEpEvents(STRING)
STRING (STRING) - STRINGepCmd(NUMBER, STRING)
NUMBER (NUMBER) - NUMBERSTRING (STRING) - STRINGcapability.pHMeasurement
capability "pHMeasurement"
pH - NUMBER