CreateAccessCodeForm Seam Component to your user. On the other hand, if a connected device does not support the remote unlock action, you’ll likely want to disable or not display the unlock functionality for your app user.
Capability Flags
Capability flags inform your application about what features and behaviors each device supports. That is, you can use capability flags to match devices to the requirements for operations within your app. These flags also compare the capabilities of a specific device instance with those of the device model in general. All capability flags share the following behavior:-
If
true, the device has this capability, and this capability is functional on this device instance. -
If
false, the device has this capability, but the capability is not currently functional. See the device errors and warnings for more details about the cause of this issue. You can also examine the properties of the device and events related to the device to learn more about the cause of this issue. - If not present, the device does not have this capability.
false could include that a required hardware accessory is not connected to the device. For example, if a lock needs a Wi-Fi bridge for connectivity and is currently not connected to a bridge, the lock cannot be remotely unlocked. If a lock is missing an accessory keypad, access codes cannot be programmed on the lock.
With respect to the ability to program online access codes, as long as a lock has the required hardware, Seam assumes that any offline status is temporary and will be resolved before it’s time to set the access code on the device. Consequently, in this case, Seam maintains can_program_online_access_codes as true.
Seam recommends adding capability checks before performing specific actions in your app. For example, before performing a remote unlock operation, you can check to make sure that the target device supports remote unlocking. For details and code samples, see the corresponding capability guides.
In addition to viewing the capabilities for a specific device, you can also
view the capabilities for a provider using List Device
Providers. If
at least one supported device from a provider has a specific capability, the
corresponding capability flag is
true.| Property | Type | Description |
|---|---|---|
device.can_remotely_unlock | Boolean | Indicates whether the device can perform aremote unlock operation. |
device.can_remotely_lock | Boolean | Indicates whether the device can perform aremote lock operation. |
device.can_program_online_access_codes | Boolean | Indicates whether the device canprogram online access codes. If true, it is currently possible to create new online
access codes for the device, and Seam programs the device the next time
it’s online. |
device.can_program_offline_access_codes | Boolean | Indicates whether the device canprogram offline access codes. When this flag is true, Seam can generate an offline code
for this device, regardless of the current online status of the device. |
device.can_hvac_heat | Boolean | Indicates whether the thermostat device (in conjunction with the
associated HVAC system) supportsheat mode. When this flag is true, you canset the thermostat to heat mode. |
device.can_hvac_cool | Boolean | Indicates whether the thermostat device (in conjunction with the
associated HVAC system) supportscool mode. When this flag is true, you canset the thermostat to cool mode. |
device.can_hvac_heat_cool | Boolean | Indicates whether the thermostat device (in conjunction with the
associated HVAC system) supportsheat-cool (auto) mode. When this flag is true, you canset the thermostat to heat-cool mode. |
device.can_turn_off_hvac | Boolean | Indicates whether the thermostat device (in conjunction with the
associated HVAC system) supportsoff mode. When this flag is true, you canset the thermostat to “off” mode, which turns off both the heating and cooling systems for the space. |
Seam is actively developing additional capability flags to provide you with
even more robust capability checking abilities for your app. If you would like
us to add a specific capability flag, contact
support@seam.co.

