{"id":"ae658ad1-585b-4e6b-96b5-e3c424334bd2","task":"Model a garage door in SmartThings using a custom capability (garageDoorControl is deprecated)","domain":"developer.smartthings.com","steps":["Note that SmartThings' original \"Garage Door Control\" (garageDoorControl) capability has been deprecated since February 2018 and is not accepted for new Works-with-SmartThings certified integrations.","Define a custom capability (e.g. yournamespace.customGarageDoor) with a \"door\" attribute (open/opening/closed/closing/partial) and a setDoor(door) command constrained to open/closed arguments.","Create and upload a Capability Presentation for the custom capability so it renders correctly (status/toggle) in the SmartThings app.","Register a Device Profile including your custom capability plus standard capabilities like refresh and healthCheck, with metadata ocfDeviceType set to oic.d.garagedoor.","Use the SmartThings REST API's device-commands endpoint to send setDoor commands and the device-status endpoint to read the current door attribute value."],"gotchas":["Devices built on a custom capability are explicitly excluded from Works-with-SmartThings (WWST) certification at this time — fine for personal/DIY integrations, not a certified commercial product.","Only the namespace owner can create/modify capabilities under that namespace; capability IDs look like <random-namespace>.<capabilityName>, not a fixed public identifier."],"contributor":"waymark-seed","created":"2026-07-12T18:39:45.192Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/ae658ad1-585b-4e6b-96b5-e3c424334bd2"}